forked from Manuel/meeting-assistant
feat: add transcription pause controls
This commit is contained in:
@@ -74,7 +74,8 @@ public sealed class TaskbarIconTests
|
||||
menu,
|
||||
("Open agent", MeetingTaskbarAction.EditRules, false),
|
||||
("Finish meeting", MeetingTaskbarAction.StopRecording, true),
|
||||
("Microphone", MeetingTaskbarAction.OpenSubmenu, true),
|
||||
("Pause transcription", MeetingTaskbarAction.PauseTranscription, true),
|
||||
("Microphone", MeetingTaskbarAction.OpenSubmenu, false),
|
||||
("Cancel meeting recording and discard", MeetingTaskbarAction.AbortRecording, false),
|
||||
("Switch to english\tCtrl+Alt+L", MeetingTaskbarAction.SwitchProfile, false),
|
||||
("Exit", MeetingTaskbarAction.Exit, true));
|
||||
@@ -94,10 +95,32 @@ public sealed class TaskbarIconTests
|
||||
menu,
|
||||
("Open agent", MeetingTaskbarAction.EditRules, false),
|
||||
("Finish meeting", MeetingTaskbarAction.StopRecording, true),
|
||||
("Cancel meeting recording and discard", MeetingTaskbarAction.AbortRecording, true),
|
||||
("Pause transcription", MeetingTaskbarAction.PauseTranscription, true),
|
||||
("Cancel meeting recording and discard", MeetingTaskbarAction.AbortRecording, false),
|
||||
("Exit", MeetingTaskbarAction.Exit, true));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void TranscriptionPauseActionTracksActivePauseStateWithoutHidingFinish()
|
||||
{
|
||||
var runningMenu = MeetingTaskbarMenuBuilder.Build(
|
||||
Status(isRecording: true, state: RecordingProcessState.Recording, profile: "default"),
|
||||
[Profile("default")]);
|
||||
var pausedMenu = MeetingTaskbarMenuBuilder.Build(
|
||||
Status(isRecording: true, state: RecordingProcessState.Recording, profile: "default", isPaused: true),
|
||||
[Profile("default")]);
|
||||
|
||||
Assert.Contains(runningMenu.Items, item =>
|
||||
item.Action == MeetingTaskbarAction.PauseTranscription &&
|
||||
item.Text == "Pause transcription");
|
||||
Assert.Contains(pausedMenu.Items, item =>
|
||||
item.Action == MeetingTaskbarAction.UnpauseTranscription &&
|
||||
item.Text == "Unpause transcription");
|
||||
Assert.Contains(pausedMenu.Items, item =>
|
||||
item.Action == MeetingTaskbarAction.StopRecording &&
|
||||
item.Text == "Finish meeting");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ProcessingMenuShowsSummarizingButAllowsStartingNewRecordings()
|
||||
{
|
||||
@@ -200,7 +223,8 @@ public sealed class TaskbarIconTests
|
||||
private static RecordingStatus Status(
|
||||
bool isRecording = false,
|
||||
RecordingProcessState state = RecordingProcessState.Idle,
|
||||
string? profile = null)
|
||||
string? profile = null,
|
||||
bool isPaused = false)
|
||||
{
|
||||
return new RecordingStatus(
|
||||
isRecording,
|
||||
@@ -209,7 +233,8 @@ public sealed class TaskbarIconTests
|
||||
state == RecordingProcessState.Idle ? null : "context.md",
|
||||
state == RecordingProcessState.Idle ? null : "summary.md",
|
||||
state,
|
||||
profile);
|
||||
profile,
|
||||
isPaused);
|
||||
}
|
||||
|
||||
[SupportedOSPlatform("windows")]
|
||||
|
||||
Reference in New Issue
Block a user