feat(mac,ios,playback,store): initial macos implementation
This commit is contained in:
1 parent
e5bb559d7f
commit
d2d7166cf0
72 files changed
+4452
-318
No files matched your search
@@ -0,0 +1,34 @@
|
||||
import Domain
|
||||
import Foundation
|
||||
@testable import Playback
|
||||
import Testing
|
||||
|
||||
struct SampleRateMatcherTests {
|
||||
private let device = OutputDeviceInfo(id: 1, name: "Fake", nominalRate: 48000, availableRates: [44100, 48000, 96000])
|
||||
private let flac = AudioFormat(codec: .flac, sampleRate: 44100, bitDepth: 16)
|
||||
|
||||
@Test func settingOffLeavesDeviceAlone() {
|
||||
#expect(SampleRateMatcher(isEnabled: false).targetRate(for: flac, on: device) == nil)
|
||||
}
|
||||
|
||||
@Test func sameRateNeedsNoSwitch() {
|
||||
let format = AudioFormat(codec: .flac, sampleRate: 48000)
|
||||
#expect(SampleRateMatcher(isEnabled: true).targetRate(for: format, on: device) == nil)
|
||||
}
|
||||
|
||||
@Test func unavailableRateIsIgnored() {
|
||||
let format = AudioFormat(codec: .flac, sampleRate: 192_000)
|
||||
#expect(SampleRateMatcher(isEnabled: true).targetRate(for: format, on: device) == nil)
|
||||
}
|
||||
|
||||
@Test func unknownRateOrDeviceIsIgnored() {
|
||||
let matcher = SampleRateMatcher(isEnabled: true)
|
||||
#expect(matcher.targetRate(for: AudioFormat(codec: .mp3), on: device) == nil)
|
||||
#expect(matcher.targetRate(for: nil, on: device) == nil)
|
||||
#expect(matcher.targetRate(for: flac, on: nil) == nil)
|
||||
}
|
||||
|
||||
@Test func availableRateIsChosenExactly() {
|
||||
#expect(SampleRateMatcher(isEnabled: true).targetRate(for: flac, on: device) == 44100)
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user