Reset the elapsed seconds after processing for the RecordingViewModel view model in the Recording package target.
This commit is contained in:
@@ -18,7 +18,7 @@ struct RecordingViewModelTests {
|
||||
let model = Model()
|
||||
|
||||
#expect(model.state == .notRecording)
|
||||
#expect(model.secondsElapsed == 0)
|
||||
#expect(model.elapsedSeconds == 0)
|
||||
#expect(model.textTimer == "00:00")
|
||||
}
|
||||
|
||||
@@ -178,7 +178,7 @@ struct RecordingViewModelTests {
|
||||
|
||||
try await Task.sleep(for: .seconds(1.2))
|
||||
|
||||
#expect(model.secondsElapsed >= 1)
|
||||
#expect(model.elapsedSeconds >= 1)
|
||||
#expect(model.textTimer == "00:01")
|
||||
|
||||
model.state = .notRecording
|
||||
@@ -196,12 +196,12 @@ struct RecordingViewModelTests {
|
||||
model.state = .paused
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
|
||||
let secondsWhenPaused = model.secondsElapsed
|
||||
let secondsWhenPaused = model.elapsedSeconds
|
||||
|
||||
try await Task.sleep(for: .seconds(1.2))
|
||||
|
||||
#expect(secondsWhenPaused >= 1)
|
||||
#expect(model.secondsElapsed == secondsWhenPaused)
|
||||
#expect(model.elapsedSeconds == secondsWhenPaused)
|
||||
}
|
||||
|
||||
@Test func `keeps elapsed seconds when resumed`() async throws {
|
||||
@@ -215,12 +215,12 @@ struct RecordingViewModelTests {
|
||||
model.state = .paused
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
|
||||
let secondsWhenPaused = model.secondsElapsed
|
||||
let secondsWhenPaused = model.elapsedSeconds
|
||||
|
||||
model.state = .recording
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
|
||||
#expect(model.secondsElapsed == secondsWhenPaused)
|
||||
#expect(model.elapsedSeconds == secondsWhenPaused)
|
||||
|
||||
model.state = .notRecording
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
@@ -240,7 +240,7 @@ struct RecordingViewModelTests {
|
||||
model.state = .recording
|
||||
model.updatedState(shouldRestartTimer: true)
|
||||
|
||||
#expect(model.secondsElapsed == 0)
|
||||
#expect(model.elapsedSeconds == 0)
|
||||
|
||||
model.state = .notRecording
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
@@ -254,15 +254,26 @@ struct RecordingViewModelTests {
|
||||
@Suite("Processing")
|
||||
struct Processing {
|
||||
|
||||
@Test func `returns to not recording`() async throws {
|
||||
@Test func `returns to not recording with a reset timer`() async throws {
|
||||
let model = Model()
|
||||
|
||||
model.state = .recording
|
||||
model.updatedState(shouldRestartTimer: true)
|
||||
|
||||
try await Task.sleep(for: .seconds(1.2))
|
||||
|
||||
model.state = .paused
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
|
||||
#expect(model.elapsedSeconds >= 1)
|
||||
|
||||
model.state = .processing
|
||||
model.updatedState(shouldRestartTimer: false)
|
||||
|
||||
try await Task.sleep(for: .seconds(2.5))
|
||||
|
||||
#expect(model.state == .notRecording)
|
||||
#expect(model.elapsedSeconds == 0)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user