chore: adiciona .gitignore e commit.command
This commit is contained in:
+41
@@ -0,0 +1,41 @@
|
||||
import ComposableArchitecture
|
||||
import Foundation
|
||||
import XCTest
|
||||
|
||||
@testable import Hex
|
||||
|
||||
@MainActor
|
||||
final class HistoryPlaybackTests: XCTestCase {
|
||||
func testStoppingPlaybackCompletesWaitersExactlyOnce() async {
|
||||
let controller = AudioPlayerController()
|
||||
let waiter = Task {
|
||||
await controller.waitForPlaybackToFinish()
|
||||
}
|
||||
|
||||
await Task.yield()
|
||||
controller.stop()
|
||||
controller.stop()
|
||||
|
||||
await waiter.value
|
||||
await controller.waitForPlaybackToFinish()
|
||||
}
|
||||
|
||||
func testStalePlaybackFinishedDoesNotStopCurrentPlayback() async {
|
||||
let transcriptID = UUID()
|
||||
let playbackID = UUID()
|
||||
let store = TestStore(
|
||||
initialState: HistoryFeature.State(
|
||||
transcriptionHistory: Shared(value: .init()),
|
||||
playingTranscriptID: transcriptID,
|
||||
playbackID: playbackID
|
||||
)
|
||||
) {
|
||||
HistoryFeature()
|
||||
}
|
||||
|
||||
await store.send(.playbackFinished(UUID()))
|
||||
|
||||
XCTAssertEqual(store.state.playingTranscriptID, transcriptID)
|
||||
XCTAssertEqual(store.state.playbackID, playbackID)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user