Files
codex aecef30627
PR and Push Build/Test / build-and-test (push) Successful in 9m19s
Archive completed meeting assistant changes
2026-06-26 13:15:47 +02:00

55 lines
1.7 KiB
C#

using MeetingAssistant.Recording;
namespace MeetingAssistant.Tests;
public sealed class MicrophoneSelectionTests
{
[Fact]
public void BlankConfiguredMicrophoneUsesDefaultDevice()
{
var selection = new MicrophoneDeviceSelection();
var selected = selection.Resolve(
configuredDeviceId: null,
new MicrophoneDevice("default-id", "default microphone"),
[
new MicrophoneDevice("default-id", "default microphone"),
new MicrophoneDevice("other-id", "other microphone")
]);
Assert.Equal("default-id", selected?.Id);
}
[Fact]
public void ConfiguredMicrophoneUsesMatchingDevice()
{
var selection = new MicrophoneDeviceSelection();
var selected = selection.Resolve(
"other-id",
new MicrophoneDevice("default-id", "default microphone"),
[
new MicrophoneDevice("default-id", "default microphone"),
new MicrophoneDevice("other-id", "other microphone")
]);
Assert.Equal("other-id", selected?.Id);
}
[Fact]
public void RuntimeMicrophoneSelectionOverridesConfiguredDevice()
{
var selection = new MicrophoneDeviceSelection();
selection.Select("runtime-id");
var selected = selection.Resolve(
"configured-id",
new MicrophoneDevice("default-id", "default microphone"),
[
new MicrophoneDevice("configured-id", "configured microphone"),
new MicrophoneDevice("runtime-id", "runtime microphone")
]);
Assert.Equal("runtime-id", selected?.Id);
}
}