From 4ea92f9b3004af84295890bba7d781f704d5f088 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Thu, 10 Sep 2026 16:40:57 +0200 Subject: [PATCH 01/17] enable TreatWarningsAsErrors --- .../AudioCuesheetEditor.End2EndTests.csproj | 8 ++++++++ .../AudioCuesheetEditor.Tests.csproj | 8 ++++++++ AudioCuesheetEditor/AudioCuesheetEditor.csproj | 8 ++++++++ 3 files changed, 24 insertions(+) diff --git a/AudioCuesheetEditor.End2EndTests/AudioCuesheetEditor.End2EndTests.csproj b/AudioCuesheetEditor.End2EndTests/AudioCuesheetEditor.End2EndTests.csproj index 80f095af..ce024254 100644 --- a/AudioCuesheetEditor.End2EndTests/AudioCuesheetEditor.End2EndTests.csproj +++ b/AudioCuesheetEditor.End2EndTests/AudioCuesheetEditor.End2EndTests.csproj @@ -15,6 +15,14 @@ true + + True + + + + True + + diff --git a/AudioCuesheetEditor.Tests/AudioCuesheetEditor.Tests.csproj b/AudioCuesheetEditor.Tests/AudioCuesheetEditor.Tests.csproj index 9c8eba6b..69057844 100644 --- a/AudioCuesheetEditor.Tests/AudioCuesheetEditor.Tests.csproj +++ b/AudioCuesheetEditor.Tests/AudioCuesheetEditor.Tests.csproj @@ -10,6 +10,14 @@ true + + True + + + + True + + diff --git a/AudioCuesheetEditor/AudioCuesheetEditor.csproj b/AudioCuesheetEditor/AudioCuesheetEditor.csproj index 0855b765..9fb92466 100644 --- a/AudioCuesheetEditor/AudioCuesheetEditor.csproj +++ b/AudioCuesheetEditor/AudioCuesheetEditor.csproj @@ -13,6 +13,14 @@ true service-worker-assets.js + + + True + + + + True + From 40731796dc1fc2858aef2a10d0a7ce64d680d50e Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Thu, 10 Sep 2026 16:45:49 +0200 Subject: [PATCH 02/17] Update TrackManagerTests.cs --- .../Services/AudioCuesheet/TrackManagerTests.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/AudioCuesheetEditor.Tests/Services/AudioCuesheet/TrackManagerTests.cs b/AudioCuesheetEditor.Tests/Services/AudioCuesheet/TrackManagerTests.cs index 21cd0363..514081c8 100644 --- a/AudioCuesheetEditor.Tests/Services/AudioCuesheet/TrackManagerTests.cs +++ b/AudioCuesheetEditor.Tests/Services/AudioCuesheet/TrackManagerTests.cs @@ -93,7 +93,7 @@ public void Clone_ImportTrack_ReturnsTrackClone() Assert.AreEqual(importTrack.Position, track.Position); Assert.AreEqual(importTrack.PostGap, track.PostGap); Assert.AreEqual(importTrack.PreGap, track.PreGap); - Assert.AreEqual(importTrack.Flags, track.Flags); + Assert.AreEquivalent(importTrack.Flags, track.Flags); _traceChangeManager.Verify(x => x.AddChange(It.Is(y => y.TraceableObject == track)), Times.Never); } @@ -125,7 +125,7 @@ public void Clone_ImportTrackWithLength_ReturnsTrackCloneWithLengthSet() Assert.AreEqual(importTrack.Position, track.Position); Assert.AreEqual(importTrack.PostGap, track.PostGap); Assert.AreEqual(importTrack.PreGap, track.PreGap); - Assert.AreEqual(importTrack.Flags, track.Flags); + Assert.AreEquivalent(importTrack.Flags, track.Flags); _traceChangeManager.Verify(x => x.AddChange(It.Is(y => y.TraceableObject == track)), Times.Never); } @@ -157,7 +157,7 @@ public void CopyValues_AllDefaultValues_CopiesAllValues() Assert.AreEqual(source.Position, target.Position); Assert.AreEqual(source.PostGap, target.PostGap); Assert.AreEqual(source.PreGap, target.PreGap); - Assert.AreEqual(source.Flags, target.Flags); + Assert.AreEquivalent(source.Flags, target.Flags); Assert.AreEqual(source.Length, target.Length); _traceChangeManager.Verify(x => x.AddChange(It.Is(y => y.TraceableObject == target)), Times.Exactly(9)); } @@ -190,7 +190,7 @@ public void CopyValues_ValuesSet_CopiesOnlySetValues() Assert.AreEqual(source.Position, target.Position); Assert.AreNotEqual(source.PostGap, target.PostGap); Assert.AreEqual(source.PreGap, target.PreGap); - Assert.AreNotEqual(source.Flags, target.Flags); + Assert.AreNotEquivalent(source.Flags, target.Flags); Assert.AreNotEqual(source.Length, target.Length); _traceChangeManager.Verify(x => x.AddChange(It.Is(y => y.TraceableObject == target)), Times.Exactly(6)); } From dd7cfe1c97e7c0997334ea8ab4eebd311aada5e7 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Fri, 11 Sep 2026 08:38:19 +0200 Subject: [PATCH 03/17] Update GenerateExportDialog.razor --- AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor | 2 ++ 1 file changed, 2 insertions(+) diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor index 08c77475..88306617 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor @@ -146,6 +146,7 @@ along with Foobar. If not, see } @code { + //TODO: Check what is going on with complete button, maybe we can remove it or close the dialog ExportOptions? _exportOptions; Exportfile? _exportFile; Boolean _configureExportCompleted = false; @@ -199,6 +200,7 @@ along with Foobar. If not, see String? GetGenerationValidationMessages() { + //TODO: Get validation errors only once for rendering performance String? validationErrorMessage = null; var selectedExportProfile = _exportOptions?.SelectedExportProfile; if (selectedExportProfile != null) From 5d53df81b218be8b7b59a3a61d71e33e1ff16785 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Fri, 11 Sep 2026 11:44:53 +0200 Subject: [PATCH 04/17] enhance tests --- .../Models/DetailView.cs | 26 +++++++++++++++---- .../Tests/Desktop/ExportTest.cs | 26 ++++++++++++++++++- .../Tests/Smartphone/ExportTest.cs | 26 ++++++++++++++++++- 3 files changed, 71 insertions(+), 7 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs index ff94e63e..3b9ec335 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs @@ -52,20 +52,36 @@ internal async Task AddTrackAsync(int audiofileIndex) await _page.GetByRole(AriaRole.Button, new() { Name = "Add new track" }).Nth(audiofileIndex).ClickAsync(); } - internal async Task EditTrackAsync(string? artist = null, string? title = null) + internal async Task EditTrackAsync(string? artist = null, string? title = null, TimeSpan? begin = null, TimeSpan? end = null, int trackPosition = 1) { if (artist != null) { - await _page.Locator("td:nth-child(3)").ClickAsync(); - await _page.Locator("td:nth-child(3)").Last.GetByRole(AriaRole.Textbox).FillAsync(artist); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(3)").ClickAsync(); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(3)").Last.GetByRole(AriaRole.Textbox).FillAsync(artist); // Click outside the autocomplete to have an focus lost event for getting the value written to model await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); await _page.WaitForTimeoutAsync(100); } if (title != null) { - await _page.Locator("td:nth-child(4)").ClickAsync(); - await _page.Locator("td:nth-child(4)").Last.GetByRole(AriaRole.Textbox).FillAsync(title); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(4)").ClickAsync(); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(4)").Last.GetByRole(AriaRole.Textbox).FillAsync(title); + // Click outside the autocomplete to have an focus lost event for getting the value written to model + await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); + await _page.WaitForTimeoutAsync(100); + } + if (begin != null) + { + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(5)").ClickAsync(); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(5)").Last.GetByRole(AriaRole.Textbox).FillAsync(begin.ToString() ?? string.Empty); + // Click outside the autocomplete to have an focus lost event for getting the value written to model + await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); + await _page.WaitForTimeoutAsync(100); + } + if (end != null) + { + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(6)").ClickAsync(); + await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(6)").Last.GetByRole(AriaRole.Textbox).FillAsync(end.ToString() ?? string.Empty); // Click outside the autocomplete to have an focus lost event for getting the value written to model await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); await _page.WaitForTimeoutAsync(100); diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs index a87c8844..8d00d5bc 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs @@ -84,9 +84,32 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.AddAudiofileAsync(); await detailView.SetAudiofileInputFileAsync(0, "Kalimba.mp3"); await detailView.AddTrackAsync(0); - await detailView.EditTrackAsync("Track Artist 1", "Track Title 1"); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 30), 1); + await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 30), new TimeSpan(0, 1, 0), 2); + await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 30), 3); + await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 1, 30), new TimeSpan(0, 2, 0), 4); + await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 30), 5); + await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 2, 30), new TimeSpan(0, 3, 0), 6); + await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 3, 0), new TimeSpan(0, 3, 30), 7); + await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 3, 30), new TimeSpan(0, 4, 0), 8); + await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 4, 0), new TimeSpan(0, 4, 30), 9); + await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 4, 30), new TimeSpan(0, 5, 0), 10); + await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); + await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); await bar.OpenExportDialogAsync("Textfile"); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Next", Exact = true }).ClickAsync(); + //TODO: Assert scrollbars var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); var download = await downloadTask; @@ -94,6 +117,7 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() using var reader = new StreamReader(stream); var content = await reader.ReadToEndAsync(TestContext.CancellationToken); content = content.Replace("\n", Environment.NewLine); + //TODO Assert.AreEqual(@"Cuesheet Artist 1 - Cuesheet Title 1 Track Artist 1 - Track Title 1 00:00:00 diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs index 11df1c78..28dedde8 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs @@ -86,9 +86,32 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.AddAudiofileAsync(); await detailView.SetAudiofileInputFileAsync(0, "Kalimba.mp3"); await detailView.AddTrackAsync(0); - await detailView.EditTrackAsync("Track Artist 1", "Track Title 1"); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 30), 1); + await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 30), new TimeSpan(0, 1, 0), 2); + await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 30), 3); + await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 1, 30), new TimeSpan(0, 2, 0), 4); + await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 30), 5); + await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 2, 30), new TimeSpan(0, 3, 0), 6); + await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 3, 0), new TimeSpan(0, 3, 30), 7); + await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 3, 30), new TimeSpan(0, 4, 0), 8); + await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 4, 0), new TimeSpan(0, 4, 30), 9); + await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 4, 30), new TimeSpan(0, 5, 0), 10); + await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); + await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); await bar.OpenExportDialogAsync("Textfile"); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Next", Exact = true }).ClickAsync(); + //TODO: Assert scrollbars var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); var download = await downloadTask; @@ -96,6 +119,7 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() using var reader = new StreamReader(stream); var content = await reader.ReadToEndAsync(TestContext.CancellationToken); content = content.Replace("\n", Environment.NewLine); + //TODO Assert.AreEqual(@"Cuesheet Artist 1 - Cuesheet Title 1 Track Artist 1 - Track Title 1 00:00:00 From 48e2cc7e31505242fe4db96fa9549bd94b61eedf Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 13:33:03 +0200 Subject: [PATCH 05/17] Update DisplayExportfileContent.razor --- .../Shared/Export/DisplayExportfileContent.razor | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/AudioCuesheetEditor/Shared/Export/DisplayExportfileContent.razor b/AudioCuesheetEditor/Shared/Export/DisplayExportfileContent.razor index 8e82bef7..bbe5dc3f 100644 --- a/AudioCuesheetEditor/Shared/Export/DisplayExportfileContent.razor +++ b/AudioCuesheetEditor/Shared/Export/DisplayExportfileContent.razor @@ -23,7 +23,9 @@ along with Foobar. If not, see @inject ISnackbar _snackbar - + +
@Exportfile?.Content
+
@_localizer["Copy"] @@ -31,18 +33,10 @@ along with Foobar. If not, see
@code { - private int _lineCount; - [Parameter] [EditorRequired] public Exportfile? Exportfile { get; set; } - protected override void OnParametersSet() - { - base.OnParametersSet(); - _lineCount = Exportfile?.Content?.Split(Environment.NewLine).Length ?? 1; - } - async Task CopyClipboardClicked() { await _jsRuntime.InvokeVoidAsync("navigator.clipboard.writeText", Exportfile?.Content); From 1729a5ee0e234993110a1090f64602dd827fc080 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 13:39:42 +0200 Subject: [PATCH 06/17] Update GenerateExportDialog.razor --- .../Shared/Dialogs/GenerateExportDialog.razor | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor index 88306617..e0887b82 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor @@ -28,12 +28,12 @@ along with Foobar. If not, see - - @if (String.IsNullOrEmpty(GetGenerationValidationMessages()) == false) + + @if (String.IsNullOrEmpty(_validationErrorMessage) == false) { @_localizer["Export is currently not possible:"] - @((MarkupString)GetGenerationValidationMessages()!) + @((MarkupString)_validationErrorMessage) } @@ -137,7 +137,7 @@ along with Foobar. If not, see } - + @@ -152,6 +152,7 @@ along with Foobar. If not, see Boolean _configureExportCompleted = false; MudMenu? _schemeHeadMenu, _schemeAudiofilesMenu, _schemeTracksMenu, _schemeFooterMenu; Dictionary _displayContentDialogVisible = new(); + String? _validationErrorMessage = null; private readonly DialogOptions _displayContentDialogOptions = new() { CloseButton = true, CloseOnEscapeKey = true, FullWidth = true, MaxWidth = MaxWidth.ExtraExtraLarge }; @@ -166,6 +167,7 @@ along with Foobar. If not, see await base.OnInitializedAsync(); LocalStorageOptionsProvider.OptionSaved += LocalStorageOptionsProvider_OptionSaved; _exportOptions = await LocalStorageOptionsProvider.GetOptionsAsync(); + SetValidationErrors(); } void LocalStorageOptionsProvider_OptionSaved(object? sender, IOptions option) @@ -173,6 +175,7 @@ along with Foobar. If not, see if (option is ExportOptions exportOption) { _exportOptions = exportOption; + SetValidationErrors(); StateHasChanged(); } } @@ -198,31 +201,28 @@ along with Foobar. If not, see } } - String? GetGenerationValidationMessages() + void SetValidationErrors() { - //TODO: Get validation errors only once for rendering performance - String? validationErrorMessage = null; var selectedExportProfile = _exportOptions?.SelectedExportProfile; if (selectedExportProfile != null) { var result = _exportfileGenerator.CanGenerateExportfile(selectedExportProfile); if (result.IsSuccess == false) { - validationErrorMessage = result.Error?.Message.Replace(Environment.NewLine, "
"); + _validationErrorMessage = result.Error?.Message.Replace(Environment.NewLine, "
"); } } else { - validationErrorMessage = _localizer["No export profile selected!"]; + _validationErrorMessage = _localizer["No export profile selected!"]; } - return validationErrorMessage; } Task PreviewInteraction(StepperInteractionEventArgs arg) { if (arg.StepIndex == 0) { - arg.Cancel = String.IsNullOrEmpty(GetGenerationValidationMessages()) == false; + arg.Cancel = String.IsNullOrEmpty(_validationErrorMessage) == false; } return Task.CompletedTask; } From fe7fb1d09466f3675279c7b1cf31aa24bb1c4639 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 14:15:36 +0200 Subject: [PATCH 07/17] splitting components --- .../Dialogs/GenerateExportDialog.de.resx | 9 -- .../Shared/Dialogs/GenerateExportDialog.razor | 42 +----- .../Shared/Dialogs/GenerateExportDialog.resx | 9 -- .../Shared/Export/SelectExportProfile.de.resx | 129 ++++++++++++++++++ .../Shared/Export/SelectExportProfile.razor | 92 +++++++++++++ .../Shared/Export/SelectExportProfile.resx | 129 ++++++++++++++++++ 6 files changed, 351 insertions(+), 59 deletions(-) create mode 100644 AudioCuesheetEditor/Shared/Export/SelectExportProfile.de.resx create mode 100644 AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor create mode 100644 AudioCuesheetEditor/Shared/Export/SelectExportProfile.resx diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx index 41808472..9099e3e6 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx @@ -123,15 +123,6 @@ Export ist derzeit nicht möglich: - - Exportprofil auswählen - - - Neues Exportprofil hinzufügen - - - Ausgewähltes Exportprofil löschen - Geben Sie hier den Namen für dieses Profil ein diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor index e0887b82..b6bf23ec 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor @@ -36,26 +36,7 @@ along with Foobar. If not, see @((MarkupString)_validationErrorMessage) } - - @foreach (var profile in _exportOptions.ExportProfiles) - { - @profile.Name - } - - - - @_localizer["Add new export profile"] - - - - - - @_localizer["Delete selected export profile"] - - - - - +
Export is currently not possible: - - Select export profile - - - Add new export profile - - - Delete selected export profile - Enter the name for this profile here diff --git a/AudioCuesheetEditor/Shared/Export/SelectExportProfile.de.resx b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.de.resx new file mode 100644 index 00000000..512e5258 --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.de.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Neues Exportprofil hinzufügen + + + Ausgewähltes Exportprofil löschen + + + Exportprofil auswählen + + \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor new file mode 100644 index 00000000..e7a6b2f1 --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor @@ -0,0 +1,92 @@ + +@inherits BaseLocalizedComponent + +@inject IStringLocalizer _localizer + +@if (_exportOptions != null) +{ + + @foreach (var profile in _exportOptions.ExportProfiles) + { + @profile.Name + } + + + + @_localizer["Add new export profile"] + + + + + + @_localizer["Delete selected export profile"] + + + + + +} + +@code { + //TODO: Localization + ExportOptions? _exportOptions; + + protected override async Task OnInitializedAsync() + { + await base.OnInitializedAsync(); + LocalStorageOptionsProvider.OptionSaved += LocalStorageOptionsProvider_OptionSaved; + _exportOptions = await LocalStorageOptionsProvider.GetOptionsAsync(); + } + + protected override void Dispose(bool disposing) + { + base.Dispose(disposing); + LocalStorageOptionsProvider.OptionSaved -= LocalStorageOptionsProvider_OptionSaved; + } + + void LocalStorageOptionsProvider_OptionSaved(object? sender, IOptions option) + { + if (option is ExportOptions exportOption) + { + _exportOptions = exportOption; + StateHasChanged(); + } + } + + async Task AddClick() + { + if (_exportOptions != null) + { + var newProfile = new Exportprofile(); + _exportOptions.ExportProfiles.Add(newProfile); + _exportOptions.SelectedExportProfile = newProfile; + await LocalStorageOptionsProvider.SaveOptionsAsync(_exportOptions); + } + } + + async Task DeleteClick() + { + if (_exportOptions?.SelectedExportProfile != null) + { + _exportOptions.ExportProfiles.Remove(_exportOptions.SelectedExportProfile); + _exportOptions.SelectedExportProfile = _exportOptions.ExportProfiles.LastOrDefault(); + await LocalStorageOptionsProvider.SaveOptionsAsync(_exportOptions); + } + } +} diff --git a/AudioCuesheetEditor/Shared/Export/SelectExportProfile.resx b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.resx new file mode 100644 index 00000000..67cad8d9 --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Add new export profile + + + Delete selected export profile + + + Select export profile + + \ No newline at end of file From 9498a51fb0d31409ff04166591964f903a6d69ee Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 14:32:06 +0200 Subject: [PATCH 08/17] splitting components --- .../Dialogs/GenerateExportDialog.de.resx | 78 ------- .../Shared/Dialogs/GenerateExportDialog.razor | 94 +-------- .../Shared/Dialogs/GenerateExportDialog.resx | 78 ------- .../Shared/Export/EditExportProfile.de.resx | 195 ++++++++++++++++++ .../Shared/Export/EditExportProfile.razor | 138 +++++++++++++ .../Shared/Export/EditExportProfile.resx | 195 ++++++++++++++++++ .../Shared/Export/SelectExportProfile.razor | 1 - 7 files changed, 529 insertions(+), 250 deletions(-) create mode 100644 AudioCuesheetEditor/Shared/Export/EditExportProfile.de.resx create mode 100644 AudioCuesheetEditor/Shared/Export/EditExportProfile.razor create mode 100644 AudioCuesheetEditor/Shared/Export/EditExportProfile.resx diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx index 9099e3e6..9264c493 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx @@ -123,85 +123,7 @@ Export ist derzeit nicht möglich: - - Geben Sie hier den Namen für dieses Profil ein - - - Dateiname - - - Geben Sie hier den Dateinamen für dieses Profil ein - - - Schema Kopf - - - Geben Sie hier das Kopf-Schema für dieses Profil ein - - - Platzhalter hinzufügen - - - Schema Titel - - - Geben Sie hier das Titel-Schema für dieses Profil ein - - - Schema Fuß - - - Geben Sie hier das Fuß-Schema für dieses Profil ein - Export herunterladen - - Künstler - - - Titel - - - Audiodatei - - - CDTextdatei - - - Katalognummer - - - Datum - - - Datum & Uhrzeit - - - Uhrzeit - - - Position - - - Länge - - - Markierungen - - - Vorlücke - - - Nachlücke - - - Kein Exportprofil ausgewählt! - - - Schema Audiodateien - - - Geben Sie hier das Audiodatei-Schema für dieses Profil ein - \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor index b6bf23ec..bab66176 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor @@ -18,10 +18,7 @@ along with Foobar. If not, see @inherits BaseLocalizedComponent @inject IStringLocalizer _localizer -@inject ValidationService _validationService @inject ExportfileGenerator _exportfileGenerator -@inject IBlazorDownloadFileService _blazorDownloadFileService -@inject IDialogService _dialogService @if (_exportOptions != null) { @@ -39,84 +36,7 @@ along with Foobar. If not, see
- - - - - @foreach (var placeholder in Exportprofile.AvailableCuesheetSchemes) - { - - @_localizer[placeholder.Key] - - } - - - - @foreach (var placeholder in Exportprofile.AvailableAudiofileSchemes) - { - - @_localizer[placeholder.Key] - - } - - - - @foreach (var placeholder in Exportprofile.AvailableTrackSchemes) - { - - @_localizer[placeholder.Key] - - } - - - - @foreach (var placeholder in Exportprofile.AvailableCuesheetSchemes) - { - - @_localizer[placeholder.Key] - - } - + @@ -131,12 +51,8 @@ along with Foobar. If not, see ExportOptions? _exportOptions; Exportfile? _exportFile; Boolean _configureExportCompleted = false; - MudMenu? _schemeHeadMenu, _schemeAudiofilesMenu, _schemeTracksMenu, _schemeFooterMenu; - Dictionary _displayContentDialogVisible = new(); String? _validationErrorMessage = null; - private readonly DialogOptions _displayContentDialogOptions = new() { CloseButton = true, CloseOnEscapeKey = true, FullWidth = true, MaxWidth = MaxWidth.ExtraExtraLarge }; - protected override void Dispose(bool disposing) { base.Dispose(disposing); @@ -200,12 +116,4 @@ along with Foobar. If not, see } } } - - async Task AdornmentClickAsync(MudMenu? menu, MouseEventArgs args) - { - if (menu != null) - { - await menu.OpenMenuAsync(args); - } - } } diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx index 1ce18081..c8ac268d 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx @@ -123,85 +123,7 @@ Export is currently not possible: - - Enter the name for this profile here - - - Filename - - - Enter the filename for this profile here - - - Scheme head - - - Enter the header scheme for this profile here - - - Add placeholder - - - Scheme tracks - - - Enter the tracks scheme for this profile here - - - Scheme footer - - - Enter the footer scheme for this profile here - Download export - - Artist - - - Title - - - Audiofile - - - CDTextfile - - - Cataloguenumber - - - Date - - - Date & Time - - - Time - - - Position - - - Length - - - Flags - - - PreGap - - - PostGap - - - No export profile selected! - - - Scheme Audiofiles - - - Enter the audiofiles scheme for this profile here - \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Export/EditExportProfile.de.resx b/AudioCuesheetEditor/Shared/Export/EditExportProfile.de.resx new file mode 100644 index 00000000..8daa9cda --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/EditExportProfile.de.resx @@ -0,0 +1,195 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Künstler + + + Audiodatei + + + Katalognummer + + + CDTextdatei + + + Datum + + + Datum & Uhrzeit + + + Geben Sie hier das Audiodatei-Schema für dieses Profil ein + + + Geben Sie hier den Dateinamen für dieses Profil ein + + + Geben Sie hier das Fuß-Schema für dieses Profil ein + + + Geben Sie hier das Kopf-Schema für dieses Profil ein + + + Geben Sie hier den Namen für dieses Profil ein + + + Geben Sie hier das Titel-Schema für dieses Profil ein + + + Dateiname + + + Markierungen + + + Länge + + + Name + + + Position + + + Nachlücke + + + Vorlücke + + + Schema Audiodateien + + + Schema Fuß + + + Schema Kopf + + + Schema Titel + + + Uhrzeit + + + Titel + + \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Export/EditExportProfile.razor b/AudioCuesheetEditor/Shared/Export/EditExportProfile.razor new file mode 100644 index 00000000..75bda604 --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/EditExportProfile.razor @@ -0,0 +1,138 @@ + +@inherits BaseLocalizedComponent + +@inject IStringLocalizer _localizer +@inject ValidationService _validationService + +@if (_exportOptions != null) +{ + + + + + @foreach (var placeholder in Exportprofile.AvailableCuesheetSchemes) + { + + @_localizer[placeholder.Key] + + } + + + + @foreach (var placeholder in Exportprofile.AvailableAudiofileSchemes) + { + + @_localizer[placeholder.Key] + + } + + + + @foreach (var placeholder in Exportprofile.AvailableTrackSchemes) + { + + @_localizer[placeholder.Key] + + } + + + + @foreach (var placeholder in Exportprofile.AvailableCuesheetSchemes) + { + + @_localizer[placeholder.Key] + + } + +} + +@code { + ExportOptions? _exportOptions; + MudMenu? _schemeHeadMenu, _schemeAudiofilesMenu, _schemeTracksMenu, _schemeFooterMenu; + + protected override async Task OnInitializedAsync() + { + await base.OnInitializedAsync(); + LocalStorageOptionsProvider.OptionSaved += LocalStorageOptionsProvider_OptionSaved; + _exportOptions = await LocalStorageOptionsProvider.GetOptionsAsync(); + } + + protected override void Dispose(bool disposing) + { + base.Dispose(disposing); + LocalStorageOptionsProvider.OptionSaved -= LocalStorageOptionsProvider_OptionSaved; + } + + void LocalStorageOptionsProvider_OptionSaved(object? sender, IOptions option) + { + if (option is ExportOptions exportOption) + { + _exportOptions = exportOption; + StateHasChanged(); + } + } + + async Task AdornmentClickAsync(MudMenu? menu, MouseEventArgs args) + { + if (menu != null) + { + await menu.OpenMenuAsync(args); + } + } +} \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Export/EditExportProfile.resx b/AudioCuesheetEditor/Shared/Export/EditExportProfile.resx new file mode 100644 index 00000000..f83a3659 --- /dev/null +++ b/AudioCuesheetEditor/Shared/Export/EditExportProfile.resx @@ -0,0 +1,195 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Artist + + + Audiofile + + + Cataloguenumber + + + CDTextfile + + + Date + + + Date & Time + + + Enter the audiofiles scheme for this profile here + + + Enter the filename for this profile here + + + Enter the footer scheme for this profile here + + + Enter the header scheme for this profile here + + + Enter the name for this profile here + + + Enter the tracks scheme for this profile here + + + Filename + + + Flags + + + Length + + + Name + + + Position + + + PostGap + + + PreGap + + + Scheme Audiofiles + + + Scheme footer + + + Scheme head + + + Scheme tracks + + + Time + + + Title + + \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor index e7a6b2f1..836a02a8 100644 --- a/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor +++ b/AudioCuesheetEditor/Shared/Export/SelectExportProfile.razor @@ -44,7 +44,6 @@ along with Foobar. If not, see } @code { - //TODO: Localization ExportOptions? _exportOptions; protected override async Task OnInitializedAsync() From 192dec37a7a6a4da6735e1c6a1bd971eded8b586 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 15:33:25 +0200 Subject: [PATCH 09/17] switch to tabs for export dialog --- .../Dialogs/GenerateExportDialog.de.resx | 7 +++- .../Shared/Dialogs/GenerateExportDialog.razor | 40 +++++++++++-------- .../Shared/Dialogs/GenerateExportDialog.resx | 7 +++- 3 files changed, 34 insertions(+), 20 deletions(-) diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx index 9264c493..d3fde6b7 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.de.resx @@ -123,7 +123,10 @@ Export ist derzeit nicht möglich: - - Export herunterladen + + Export erzeugen + + + Export anzeigen \ No newline at end of file diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor index bab66176..c7c8cf09 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.razor @@ -24,34 +24,37 @@ along with Foobar. If not, see { - - - @if (String.IsNullOrEmpty(_validationErrorMessage) == false) - { - - @_localizer["Export is currently not possible:"] - @((MarkupString)_validationErrorMessage) - - } + @if (String.IsNullOrEmpty(_validationErrorMessage) == false) + { + + @_localizer["Export is currently not possible:"] + @((MarkupString)_validationErrorMessage) + + } + +
-
- + + @_localizer["Generate export"] + + + - -
+ +
} @code { - //TODO: Check what is going on with complete button, maybe we can remove it or close the dialog ExportOptions? _exportOptions; Exportfile? _exportFile; - Boolean _configureExportCompleted = false; String? _validationErrorMessage = null; + string? _configureExportBadgeIcon = null; + int _activeTabIndex = 0; protected override void Dispose(bool disposing) { @@ -105,6 +108,11 @@ along with Foobar. If not, see void ActiveIndexChanged(int newIndex) { + _activeTabIndex = newIndex; + if (newIndex == 0) + { + _configureExportBadgeIcon = null; + } if (newIndex == 1) { var selectedExportProfile = _exportOptions?.SelectedExportProfile; @@ -112,7 +120,7 @@ along with Foobar. If not, see { var result = _exportfileGenerator.GenerateExportfile(selectedExportProfile); _exportFile = result.Value; - _configureExportCompleted = result.IsSuccess; + _configureExportBadgeIcon = Icons.Material.Filled.Check; } } } diff --git a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx index c8ac268d..d750b48b 100644 --- a/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx +++ b/AudioCuesheetEditor/Shared/Dialogs/GenerateExportDialog.resx @@ -123,7 +123,10 @@ Export is currently not possible: - - Download export + + Generate export + + + View export \ No newline at end of file From 775f282adea48d718461db890157e905f4c82bf4 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 16:13:16 +0200 Subject: [PATCH 10/17] fix export tests --- .../Tests/Desktop/BasicTest.cs | 17 +++++++---------- .../Tests/Smartphone/BasicTest.cs | 19 +++++++++---------- 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/BasicTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/BasicTest.cs index 68c221c3..658b572b 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/BasicTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/BasicTest.cs @@ -77,14 +77,11 @@ public async Task ChangeLanguage_ShouldSwitchLanguage_WhenGermanIsSelected() await Expect(TestPage.GetByRole(AriaRole.Dialog)).ToMatchAriaSnapshotAsync(@"- dialog ""Exportprofile Close"": - heading ""Exportprofile"" [level=6] - button ""Close"" + - text: ""Export ist derzeit nicht möglich: Künstler hat keinen Wert! Titel hat keinen Wert! Audiodateien hat ungültige Anzahl (0)!"" - tablist: - - tab ""Export konfigurieren"" [selected]: - - paragraph: Export konfigurieren - - tab ""2 Export herunterladen"" [disabled]: - - text: ""2"" - - paragraph: Export herunterladen + - tab ""Export konfigurieren"" [selected] + - tab ""Export anzeigen"" - tabpanel ""Export konfigurieren"": - - text: ""Export ist derzeit nicht möglich: Künstler hat keinen Wert! Titel hat keinen Wert! Audiodateien hat ungültige Anzahl (0)!"" - combobox ""Exportprofil auswählen"": YouTube - group ""Exportprofil auswählen"" - text: Exportprofil auswählen @@ -126,13 +123,13 @@ await Expect(TestPage.GetByRole(AriaRole.Dialog)).ToMatchAriaSnapshotAsync(@"- d - button - group ""Schema Fuß"" - text: Schema Fuß - - button ""Previous"" [disabled] - - button ""Next"" [disabled]"); + - group: + - button ""Export erzeugen"" [disabled]"); await exportDialog.OpenSchemeMenuAsync("Schema Kopf"); - await Expect(TestPage.Locator("#app")).ToMatchAriaSnapshotAsync("- paragraph: Künstler\n- paragraph: Titel\n- paragraph: CDTextdatei\n- paragraph: Katalognummer\n- paragraph: Datum\n- paragraph: Datum & Uhrzeit\n- paragraph: Uhrzeit"); + await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- menu:\r\n - menuitem \"Künstler\":\r\n - paragraph: Künstler\r\n - menuitem \"Titel\":\r\n - paragraph: Titel\r\n - menuitem \"CDTextdatei\":\r\n - paragraph: CDTextdatei\r\n - menuitem \"Katalognummer\":\r\n - paragraph: Katalognummer\r\n - menuitem \"Datum\":\r\n - paragraph: Datum\r\n - menuitem \"Datum & Uhrzeit\":\r\n - paragraph: Datum & Uhrzeit\r\n - menuitem \"Uhrzeit\":\r\n - paragraph: Uhrzeit"); await TestPage.GetByText("CDTextdatei").ClickAsync(); await exportDialog.OpenSchemeMenuAsync("Schema Titel"); - await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- paragraph: Position\n- paragraph: Künstler\n- paragraph: Titel\n- paragraph: Begin\n- paragraph: End\n- paragraph: Länge\n- paragraph: Markierungen\n- paragraph: Vorlücke\n- paragraph: Nachlücke"); + await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- menu:\r\n - menuitem \"Position\":\r\n - paragraph: Position\r\n - menuitem \"Künstler\":\r\n - paragraph: Künstler\r\n - menuitem \"Titel\":\r\n - paragraph: Titel\r\n - menuitem \"Begin\":\r\n - paragraph: Begin\r\n - menuitem \"End\":\r\n - paragraph: End\r\n - menuitem \"Länge\":\r\n - paragraph: Länge\r\n - menuitem \"Markierungen\":\r\n - paragraph: Markierungen\r\n - menuitem \"Vorlücke\":\r\n - paragraph: Vorlücke\r\n - menuitem \"Nachlücke\":\r\n - paragraph: Nachlücke"); } [TestMethod] diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/BasicTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/BasicTest.cs index ae8ab082..42415043 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/BasicTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/BasicTest.cs @@ -79,14 +79,13 @@ public async Task ChangeLanguage_ShouldSwitchLanguage_WhenGermanIsSelected() await Expect(TestPage.GetByRole(AriaRole.Dialog)).ToMatchAriaSnapshotAsync(@"- dialog ""Exportprofile Close"": - heading ""Exportprofile"" [level=6] - button ""Close"" + - text: ""Export ist derzeit nicht möglich: Künstler hat keinen Wert! Titel hat keinen Wert! Audiodateien hat ungültige Anzahl (0)!"" + - button ""Scroll tabs left"" - tablist: - - tab ""Export konfigurieren"" [selected]: - - paragraph: Export konfigurieren - - tab ""2 Export herunterladen"" [disabled]: - - text: ""2"" - - paragraph: Export herunterladen + - tab ""Export konfigurieren"" [selected] + - tab ""Export anzeigen"" + - button ""Scroll tabs right"" - tabpanel ""Export konfigurieren"": - - text: ""Export ist derzeit nicht möglich: Künstler hat keinen Wert! Titel hat keinen Wert! Audiodateien hat ungültige Anzahl (0)!"" - combobox ""Exportprofil auswählen"": YouTube - group ""Exportprofil auswählen"" - text: Exportprofil auswählen @@ -128,13 +127,13 @@ await Expect(TestPage.GetByRole(AriaRole.Dialog)).ToMatchAriaSnapshotAsync(@"- d - button - group ""Schema Fuß"" - text: Schema Fuß - - button ""Previous"" [disabled] - - button ""Next"" [disabled]"); + - group: + - button ""Export erzeugen"" [disabled]"); await exportDialog.OpenSchemeMenuAsync("Schema Kopf"); - await Expect(TestPage.Locator("#app")).ToMatchAriaSnapshotAsync("- paragraph: Künstler\n- paragraph: Titel\n- paragraph: CDTextdatei\n- paragraph: Katalognummer\n- paragraph: Datum\n- paragraph: Datum & Uhrzeit\n- paragraph: Uhrzeit"); + await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- menu:\r\n - menuitem \"Künstler\":\r\n - paragraph: Künstler\r\n - menuitem \"Titel\":\r\n - paragraph: Titel\r\n - menuitem \"CDTextdatei\":\r\n - paragraph: CDTextdatei\r\n - menuitem \"Katalognummer\":\r\n - paragraph: Katalognummer\r\n - menuitem \"Datum\":\r\n - paragraph: Datum\r\n - menuitem \"Datum & Uhrzeit\":\r\n - paragraph: Datum & Uhrzeit\r\n - menuitem \"Uhrzeit\":\r\n - paragraph: Uhrzeit"); await TestPage.GetByText("CDTextdatei").ClickAsync(); await exportDialog.OpenSchemeMenuAsync("Schema Titel"); - await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- paragraph: Position\n- paragraph: Künstler\n- paragraph: Titel\n- paragraph: Begin\n- paragraph: End\n- paragraph: Länge\n- paragraph: Markierungen\n- paragraph: Vorlücke\n- paragraph: Nachlücke"); + await Expect(TestPage.GetByTestId("menu-wrapper")).ToMatchAriaSnapshotAsync("- menu:\r\n - menuitem \"Position\":\r\n - paragraph: Position\r\n - menuitem \"Künstler\":\r\n - paragraph: Künstler\r\n - menuitem \"Titel\":\r\n - paragraph: Titel\r\n - menuitem \"Begin\":\r\n - paragraph: Begin\r\n - menuitem \"End\":\r\n - paragraph: End\r\n - menuitem \"Länge\":\r\n - paragraph: Länge\r\n - menuitem \"Markierungen\":\r\n - paragraph: Markierungen\r\n - menuitem \"Vorlücke\":\r\n - paragraph: Vorlücke\r\n - menuitem \"Nachlücke\":\r\n - paragraph: Nachlücke"); } [TestMethod] From 736722166b48d5692b1f960bb2ebd8b296224311 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 14 Sep 2026 16:46:03 +0200 Subject: [PATCH 11/17] Update DetailView.cs --- .../Models/DetailView.cs | 36 +++++++++---------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs index 3b9ec335..d6551506 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs @@ -56,35 +56,19 @@ internal async Task EditTrackAsync(string? artist = null, string? title = null, { if (artist != null) { - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(3)").ClickAsync(); - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(3)").Last.GetByRole(AriaRole.Textbox).FillAsync(artist); - // Click outside the autocomplete to have an focus lost event for getting the value written to model - await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); - await _page.WaitForTimeoutAsync(100); + await EditTrackFieldAsync(trackPosition, "Artist", artist); } if (title != null) { - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(4)").ClickAsync(); - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(4)").Last.GetByRole(AriaRole.Textbox).FillAsync(title); - // Click outside the autocomplete to have an focus lost event for getting the value written to model - await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); - await _page.WaitForTimeoutAsync(100); + await EditTrackFieldAsync(trackPosition, "Title", title); } if (begin != null) { - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(5)").ClickAsync(); - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(5)").Last.GetByRole(AriaRole.Textbox).FillAsync(begin.ToString() ?? string.Empty); - // Click outside the autocomplete to have an focus lost event for getting the value written to model - await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); - await _page.WaitForTimeoutAsync(100); + await EditTrackFieldAsync(trackPosition, "Begin", begin.ToString() ?? string.Empty); } if (end != null) { - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(6)").ClickAsync(); - await _page.Locator($"tr:nth-child({trackPosition + 1}) > td:nth-child(6)").Last.GetByRole(AriaRole.Textbox).FillAsync(end.ToString() ?? string.Empty); - // Click outside the autocomplete to have an focus lost event for getting the value written to model - await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); - await _page.WaitForTimeoutAsync(100); + await EditTrackFieldAsync(trackPosition, "End", end.ToString() ?? string.Empty); } } @@ -135,5 +119,17 @@ internal async Task OpenRenameAudiofileDialogAsync(int audiofileIndex) await _page.GetByRole(AriaRole.Group).Filter(new() { HasText = "AudiofileAudiofile" }).Nth(audiofileIndex).GetByLabel("More").ClickAsync(); await _page.GetByText("Rename file").ClickAsync(); } + + async Task EditTrackFieldAsync(int trackPosition, string dataLabel, string value) + { + var row = _page.Locator("tbody tr:not([aria-hidden='true'])").Nth(trackPosition - 1); + var cell = row.Locator($"td[data-label='{dataLabel}']"); + await cell.ClickAsync(); + var textbox = cell.Locator("input[type='text']"); + await textbox.FillAsync(value); + // Click outside the autocomplete to have an focus lost event for getting the value written to model + await _page.GetByRole(AriaRole.Heading, new() { Name = "Playback" }).ClickAsync(new() { Force = true }); + await _page.WaitForTimeoutAsync(100); + } } } From 648cc879a207514d89b2266f66d8e0640a144cf9 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 10:40:15 +0200 Subject: [PATCH 12/17] fix import tests --- .../Models/ImportView.cs | 4 +- .../Tests/Desktop/ExportTest.cs | 2 +- .../Tests/Desktop/ImportTest.cs | 512 +++++++++--------- .../Tests/Smartphone/ExportTest.cs | 2 +- .../Tests/Smartphone/ImportTest.cs | 512 +++++++++--------- 5 files changed, 516 insertions(+), 516 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs b/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs index 90b7286b..174e6fd1 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs @@ -92,8 +92,8 @@ internal async Task SelectTracksAsync(IEnumerable trackTablePositions, Bool internal async Task EditTracksModalAsync(string title) { await _page.GetByRole(AriaRole.Button, new() { Name = "Edit selected tracks" }).ClickAsync(); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).FillAsync(title); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).PressAsync("Tab"); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).FillAsync(title); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).PressAsync("Tab"); await _page.GetByRole(AriaRole.Button, new() { Name = "Save changes" }).ClickAsync(); } diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs index 8d00d5bc..f5210ea3 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs @@ -108,7 +108,7 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); await bar.OpenExportDialogAsync("Textfile"); - await TestPage.GetByRole(AriaRole.Button, new() { Name = "Next", Exact = true }).ClickAsync(); + await TestPage.GetByRole(AriaRole.Button, new() { Name = "Generate export" }).ClickAsync(); //TODO: Assert scrollbars var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ImportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ImportTest.cs index f306ab23..6e443a41 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ImportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ImportTest.cs @@ -48,11 +48,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -68,11 +68,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -89,11 +89,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -110,11 +110,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -131,11 +131,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title 5 Clear"": - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -152,11 +152,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -173,11 +173,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -194,11 +194,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": @@ -245,11 +245,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -265,11 +265,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -286,11 +286,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -307,11 +307,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -328,11 +328,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title Edited 5 Clear"": - - textbox: Sample Title Edited 5 + - combobox: Sample Title Edited 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -349,11 +349,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -370,11 +370,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -391,11 +391,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": @@ -436,11 +436,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Adriatique Clear"": - - textbox: Adriatique + - combobox: Adriatique - button ""Clear"" - button - cell ""X. Clear"": - - textbox: X. + - combobox: X. - button ""Clear"" - button - cell ""00:00:00"": @@ -455,11 +455,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Third Harmony Clear"": - - textbox: Third Harmony + - combobox: Third Harmony - button ""Clear"" - button - cell ""Fears And Dreams (Original Mix) Clear"": - - textbox: Fears And Dreams (Original Mix) + - combobox: Fears And Dreams (Original Mix) - button ""Clear"" - button - cell ""00:05:24"": @@ -474,11 +474,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Dele Sosimi Afrobeat Orchestra Clear"": - - textbox: Dele Sosimi Afrobeat Orchestra + - combobox: Dele Sosimi Afrobeat Orchestra - button ""Clear"" - button - cell ""Too Much Information (Laolu Remix; Edit) Clear"": - - textbox: Too Much Information (Laolu Remix; Edit) + - combobox: Too Much Information (Laolu Remix; Edit) - button ""Clear"" - button - cell ""00:10:39"": @@ -493,11 +493,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Edem, Govan Clear"": - - textbox: Edem, Govan + - combobox: Edem, Govan - button ""Clear"" - button - cell ""Ankh (Onetwo MX Remix) Clear"": - - textbox: Ankh (Onetwo MX Remix) + - combobox: Ankh (Onetwo MX Remix) - button ""Clear"" - button - cell ""00:17:06"": @@ -512,11 +512,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Jody Wisternoff Clear"": - - textbox: Jody Wisternoff + - combobox: Jody Wisternoff - button ""Clear"" - button - cell ""For All Time (feat. Hendrik Burkhard) (Extended Mix) Clear"": - - textbox: For All Time (feat. Hendrik Burkhard) (Extended Mix) + - combobox: For All Time (feat. Hendrik Burkhard) (Extended Mix) - button ""Clear"" - button - cell ""00:23:21"": @@ -531,11 +531,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Einmusik Clear"": - - textbox: Einmusik + - combobox: Einmusik - button ""Clear"" - button - cell ""Bead (Original Mix) Clear"": - - textbox: Bead (Original Mix) + - combobox: Bead (Original Mix) - button ""Clear"" - button - cell ""00:29:02"": @@ -550,11 +550,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sebastien Leger Clear"": - - textbox: Sebastien Leger + - combobox: Sebastien Leger - button ""Clear"" - button - cell ""La Danse du Scorpion Clear"": - - textbox: La Danse du Scorpion + - combobox: La Danse du Scorpion - button ""Clear"" - button - cell ""00:34:27"": @@ -569,11 +569,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Paul Thomas & Solid Stone Clear"": - - textbox: Paul Thomas & Solid Stone + - combobox: Paul Thomas & Solid Stone - button ""Clear"" - button - cell ""La Bombo (Solid Stone Remix) Clear"": - - textbox: La Bombo (Solid Stone Remix) + - combobox: La Bombo (Solid Stone Remix) - button ""Clear"" - button - cell ""00:40:59"": @@ -588,11 +588,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""9"" - cell ""GusGus Clear"": - - textbox: GusGus + - combobox: GusGus - button ""Clear"" - button - cell ""Crossfade (Maceo Plex Mix) Clear"": - - textbox: Crossfade (Maceo Plex Mix) + - combobox: Crossfade (Maceo Plex Mix) - button ""Clear"" - button - cell ""00:46:19"": @@ -607,11 +607,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""10"" - cell ""Klangkarussell Clear"": - - textbox: Klangkarussell + - combobox: Klangkarussell - button ""Clear"" - button - cell ""Time (Original Mix) Clear"": - - textbox: Time (Original Mix) + - combobox: Time (Original Mix) - button ""Clear"" - button - cell ""00:52:20"": @@ -626,11 +626,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""11"" - cell ""Anysense & Un:said Clear"": - - textbox: Anysense & Un:said + - combobox: Anysense & Un:said - button ""Clear"" - button - cell ""Missing Path (Original Mix) Clear"": - - textbox: Missing Path (Original Mix) + - combobox: Missing Path (Original Mix) - button ""Clear"" - button - cell ""00:56:19"": @@ -645,11 +645,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""12"" - cell ""Space Food Clear"": - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Bombay Clear"": - - textbox: Bombay + - combobox: Bombay - button ""Clear"" - button - cell ""01:01:41"": @@ -664,11 +664,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""13"" - cell ""SHDW & Obscure Shape Clear"": - - textbox: SHDW & Obscure Shape + - combobox: SHDW & Obscure Shape - button ""Clear"" - button - cell ""Wächter der Nacht (Original Mix) Clear"": - - textbox: Wächter der Nacht (Original Mix) + - combobox: Wächter der Nacht (Original Mix) - button ""Clear"" - button - cell ""01:06:33"": @@ -683,11 +683,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""14"" - cell ""HOSH Clear"": - - textbox: HOSH + - combobox: HOSH - button ""Clear"" - button - cell ""Karma Clear"": - - textbox: Karma + - combobox: Karma - button ""Clear"" - button - cell ""01:11:04"": @@ -702,11 +702,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""15"" - cell ""Alexey Union Clear"": - - textbox: Alexey Union + - combobox: Alexey Union - button ""Clear"" - button - cell ""Olympia (Original Mix) Clear"": - - textbox: Olympia (Original Mix) + - combobox: Olympia (Original Mix) - button ""Clear"" - button - cell ""01:15:28"": @@ -721,11 +721,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""16"" - cell ""Paul Taylor Clear"": - - textbox: Paul Taylor + - combobox: Paul Taylor - button ""Clear"" - button - cell ""Afterglow Clear"": - - textbox: Afterglow + - combobox: Afterglow - button ""Clear"" - button - cell ""01:21:08"": @@ -740,11 +740,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""17"" - cell ""Philter Clear"": - - textbox: Philter + - combobox: Philter - button ""Clear"" - button - cell ""Stranger Clear"": - - textbox: Stranger + - combobox: Stranger - button ""Clear"" - button - cell ""01:25:38"": @@ -759,11 +759,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""18"" - cell ""Skizologic Clear"": - - textbox: Skizologic + - combobox: Skizologic - button ""Clear"" - button - cell ""Hypersphere (Original Mix) Clear"": - - textbox: Hypersphere (Original Mix) + - combobox: Hypersphere (Original Mix) - button ""Clear"" - button - cell ""01:31:52"": @@ -778,11 +778,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""19"" - cell ""Thomas Schumacher, Caitlin Clear"": - - textbox: Thomas Schumacher, Caitlin + - combobox: Thomas Schumacher, Caitlin - button ""Clear"" - button - cell ""All of You (Remix) Clear"": - - textbox: All of You (Remix) + - combobox: All of You (Remix) - button ""Clear"" - button - cell ""01:36:40"": @@ -797,11 +797,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""20"" - cell ""A. Skomoroh Clear"": - - textbox: A. Skomoroh + - combobox: A. Skomoroh - button ""Clear"" - button - cell ""White Horse Conquest (Original Mix) Clear"": - - textbox: White Horse Conquest (Original Mix) + - combobox: White Horse Conquest (Original Mix) - button ""Clear"" - button - cell ""01:42:16"": @@ -816,11 +816,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""21"" - cell ""Patrik Berg Clear"": - - textbox: Patrik Berg + - combobox: Patrik Berg - button ""Clear"" - button - cell ""Bright (Original Mix) Clear"": - - textbox: Bright (Original Mix) + - combobox: Bright (Original Mix) - button ""Clear"" - button - cell ""01:47:04"": @@ -835,11 +835,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""22"" - cell ""Hidden Empire Clear"": - - textbox: Hidden Empire + - combobox: Hidden Empire - button ""Clear"" - button - cell ""Bengal Clear"": - - textbox: Bengal + - combobox: Bengal - button ""Clear"" - button - cell ""01:52:37"": @@ -854,11 +854,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""23"" - cell ""Mario Ochoa Clear"": - - textbox: Mario Ochoa + - combobox: Mario Ochoa - button ""Clear"" - button - cell ""Levitate Clear"": - - textbox: Levitate + - combobox: Levitate - button ""Clear"" - button - cell ""01:58:05"": @@ -873,11 +873,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""24"" - cell ""Raul Facio Clear"": - - textbox: Raul Facio + - combobox: Raul Facio - button ""Clear"" - button - cell ""Eyes Wide Shut (Original Mix) Clear"": - - textbox: Eyes Wide Shut (Original Mix) + - combobox: Eyes Wide Shut (Original Mix) - button ""Clear"" - button - cell ""02:03:00"": @@ -892,11 +892,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""25"" - cell ""Soolver Clear"": - - textbox: Soolver + - combobox: Soolver - button ""Clear"" - button - cell ""Regular (Original Mix) Clear"": - - textbox: Regular (Original Mix) + - combobox: Regular (Original Mix) - button ""Clear"" - button - cell ""02:08:21"": @@ -911,11 +911,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""26"" - cell ""Weska Clear"": - - textbox: Weska + - combobox: Weska - button ""Clear"" - button - cell ""EQ64 (Original Mix) Clear"": - - textbox: EQ64 (Original Mix) + - combobox: EQ64 (Original Mix) - button ""Clear"" - button - cell ""02:14:31"": @@ -930,11 +930,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""27"" - cell ""Tempo Giusto Clear"": - - textbox: Tempo Giusto + - combobox: Tempo Giusto - button ""Clear"" - button - cell ""The Fall (Extended Mix) Clear"": - - textbox: The Fall (Extended Mix) + - combobox: The Fall (Extended Mix) - button ""Clear"" - button - cell ""02:18:35"": @@ -949,11 +949,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""28"" - cell ""Vlind & Asteroid & Gary Leroy Clear"": - - textbox: Vlind & Asteroid & Gary Leroy + - combobox: Vlind & Asteroid & Gary Leroy - button ""Clear"" - button - cell ""Trinity (Extended Mix) Clear"": - - textbox: Trinity (Extended Mix) + - combobox: Trinity (Extended Mix) - button ""Clear"" - button - cell ""02:24:12"": @@ -968,11 +968,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""29"" - cell ""Astral Legacy Clear"": - - textbox: Astral Legacy + - combobox: Astral Legacy - button ""Clear"" - button - cell ""Vaveyla (Original Mix) Clear"": - - textbox: Vaveyla (Original Mix) + - combobox: Vaveyla (Original Mix) - button ""Clear"" - button - cell ""02:29:38"": @@ -987,11 +987,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""30"" - cell ""Gerrox Clear"": - - textbox: Gerrox + - combobox: Gerrox - button ""Clear"" - button - cell ""Chakra (Original Mix) Clear"": - - textbox: Chakra (Original Mix) + - combobox: Chakra (Original Mix) - button ""Clear"" - button - cell ""02:32:52"": @@ -1006,11 +1006,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""31"" - cell ""Charlotte De Witte Clear"": - - textbox: Charlotte De Witte + - combobox: Charlotte De Witte - button ""Clear"" - button - cell ""Pattern Clear"": - - textbox: Pattern + - combobox: Pattern - button ""Clear"" - button - cell ""02:37:00"": @@ -1025,11 +1025,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""32"" - cell ""Space Food Clear"": - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Amabey Clear"": - - textbox: Amabey + - combobox: Amabey - button ""Clear"" - button - cell ""02:41:55"": @@ -1044,11 +1044,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""33"" - cell ""ARTBAT Clear"": - - textbox: ARTBAT + - combobox: ARTBAT - button ""Clear"" - button - cell ""Papilion (Original Mix) Clear"": - - textbox: Papilion (Original Mix) + - combobox: Papilion (Original Mix) - button ""Clear"" - button - cell ""02:46:55"": @@ -1063,11 +1063,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""34"" - cell ""PETER PAHN Clear"": - - textbox: PETER PAHN + - combobox: PETER PAHN - button ""Clear"" - button - cell ""Enjoy Infinity (Original Mix) Clear"": - - textbox: Enjoy Infinity (Original Mix) + - combobox: Enjoy Infinity (Original Mix) - button ""Clear"" - button - cell ""02:51:13"": @@ -1082,11 +1082,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""35"" - cell ""Solitek Clear"": - - textbox: Solitek + - combobox: Solitek - button ""Clear"" - button - cell ""Instinct (Original Mix) Clear"": - - textbox: Instinct (Original Mix) + - combobox: Instinct (Original Mix) - button ""Clear"" - button - cell ""02:56:08"": @@ -1101,11 +1101,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""36"" - cell ""Veerus Clear"": - - textbox: Veerus + - combobox: Veerus - button ""Clear"" - button - cell ""Heavy Clear"": - - textbox: Heavy + - combobox: Heavy - button ""Clear"" - button - cell ""03:00:57"": @@ -1120,11 +1120,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""37"" - cell ""Secret Cinema & Reinier Zonneveld Clear"": - - textbox: Secret Cinema & Reinier Zonneveld + - combobox: Secret Cinema & Reinier Zonneveld - button ""Clear"" - button - cell ""Pain Thing (Original Mix) Clear"": - - textbox: Pain Thing (Original Mix) + - combobox: Pain Thing (Original Mix) - button ""Clear"" - button - cell ""03:05:19"": @@ -1139,11 +1139,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""38"" - cell ""Amelie Lens Clear"": - - textbox: Amelie Lens + - combobox: Amelie Lens - button ""Clear"" - button - cell ""Hypnotized Clear"": - - textbox: Hypnotized + - combobox: Hypnotized - button ""Clear"" - button - cell ""03:09:38"": @@ -1158,11 +1158,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""39"" - cell ""Nikolay Kirov Clear"": - - textbox: Nikolay Kirov + - combobox: Nikolay Kirov - button ""Clear"" - button - cell ""Chasing the Sun (Original Mix) Clear"": - - textbox: Chasing the Sun (Original Mix) + - combobox: Chasing the Sun (Original Mix) - button ""Clear"" - button - cell ""03:13:13"": @@ -1204,11 +1204,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -1223,11 +1223,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -1242,11 +1242,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -1261,11 +1261,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -1280,11 +1280,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title 5 Clear"": - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -1299,11 +1299,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -1318,11 +1318,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -1337,11 +1337,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": @@ -1382,11 +1382,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Nachap Clear"": - - textbox: Nachap + - combobox: Nachap - button ""Clear"" - button - cell ""Glass Clear"": - - textbox: Glass + - combobox: Glass - button ""Clear"" - button - cell ""00:00:00"": @@ -1402,10 +1402,10 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell: - - textbox + - combobox - button - cell ""Progressive + Melodic DECK Clear"": - - textbox: Progressive + Melodic DECK + - combobox: Progressive + Melodic DECK - button ""Clear"" - button - cell ""00:11:56"": @@ -1422,11 +1422,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Nomer 21 Clear"": - - textbox: Nomer 21 + - combobox: Nomer 21 - button ""Clear"" - button - cell ""Depersonalization Clear"": - - textbox: Depersonalization + - combobox: Depersonalization - button ""Clear"" - button - cell ""00:13:31"": @@ -1443,11 +1443,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Showing Off Clear"": - - textbox: Showing Off + - combobox: Showing Off - button ""Clear"" - button - cell ""00:19:14"": @@ -1464,11 +1464,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Carlo Whale Clear"": - - textbox: Carlo Whale + - combobox: Carlo Whale - button ""Clear"" - button - cell ""Unconscious Clear"": - - textbox: Unconscious + - combobox: Unconscious - button ""Clear"" - button - cell ""00:24:02"": @@ -1485,11 +1485,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Arba Han Clear"": - - textbox: Arba Han + - combobox: Arba Han - button ""Clear"" - button - cell ""Timelaps Clear"": - - textbox: Timelaps + - combobox: Timelaps - button ""Clear"" - button - cell ""00:29:37"": @@ -1506,11 +1506,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Savill Clear"": - - textbox: Savill + - combobox: Savill - button ""Clear"" - button - cell ""Energy Surrounds Clear"": - - textbox: Energy Surrounds + - combobox: Energy Surrounds - button ""Clear"" - button - cell ""00:33:13"": @@ -1527,11 +1527,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Teklix Clear"": - - textbox: Teklix + - combobox: Teklix - button ""Clear"" - button - cell ""The Tribal Code Clear"": - - textbox: The Tribal Code + - combobox: The Tribal Code - button ""Clear"" - button - cell ""00:40:30"": @@ -1548,11 +1548,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""9"" - cell ""Neuralis Clear"": - - textbox: Neuralis + - combobox: Neuralis - button ""Clear"" - button - cell ""I'm Looking for Answers Clear"": - - textbox: I'm Looking for Answers + - combobox: I'm Looking for Answers - button ""Clear"" - button - cell ""00:48:53"": @@ -1569,11 +1569,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""10"" - cell ""Nopopstar & Arsia Clear"": - - textbox: Nopopstar & Arsia + - combobox: Nopopstar & Arsia - button ""Clear"" - button - cell ""Dirty Moves Clear"": - - textbox: Dirty Moves + - combobox: Dirty Moves - button ""Clear"" - button - cell ""00:54:34"": @@ -1590,11 +1590,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""11"" - cell ""SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Lost (Maze 28 Remix) Clear"": - - textbox: Lost (Maze 28 Remix) + - combobox: Lost (Maze 28 Remix) - button ""Clear"" - button - cell ""01:00:24"": @@ -1611,11 +1611,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""12"" - cell ""SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Lost (Redspace Remix) Clear"": - - textbox: Lost (Redspace Remix) + - combobox: Lost (Redspace Remix) - button ""Clear"" - button - cell ""01:05:17"": @@ -1632,11 +1632,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""13"" - cell ""Gadoz Clear"": - - textbox: Gadoz + - combobox: Gadoz - button ""Clear"" - button - cell ""5d Clear"": - - textbox: 5d + - combobox: 5d - button ""Clear"" - button - cell ""01:08:22"": @@ -1653,11 +1653,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""14"" - cell ""DJ Danzik Clear"": - - textbox: DJ Danzik + - combobox: DJ Danzik - button ""Clear"" - button - cell ""Out of Space Clear"": - - textbox: Out of Space + - combobox: Out of Space - button ""Clear"" - button - cell ""01:16:34"": @@ -1674,11 +1674,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""15"" - cell ""Enis Çoban Clear"": - - textbox: Enis Çoban + - combobox: Enis Çoban - button ""Clear"" - button - cell ""Internet Clear"": - - textbox: Internet + - combobox: Internet - button ""Clear"" - button - cell ""01:19:22"": @@ -1695,11 +1695,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""16"" - cell ""Cold Mind & Alex Yikker Clear"": - - textbox: Cold Mind & Alex Yikker + - combobox: Cold Mind & Alex Yikker - button ""Clear"" - button - cell ""Rage Clear"": - - textbox: Rage + - combobox: Rage - button ""Clear"" - button - cell ""01:25:14"": @@ -1716,11 +1716,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""17"" - cell ""Maze 28 Clear"": - - textbox: Maze 28 + - combobox: Maze 28 - button ""Clear"" - button - cell ""Sol (JAHAYA Remix) Clear"": - - textbox: Sol (JAHAYA Remix) + - combobox: Sol (JAHAYA Remix) - button ""Clear"" - button - cell ""01:31:33"": @@ -1737,11 +1737,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""18"" - cell ""Alex Grafton Clear"": - - textbox: Alex Grafton + - combobox: Alex Grafton - button ""Clear"" - button - cell ""Hi Baby Clear"": - - textbox: Hi Baby + - combobox: Hi Baby - button ""Clear"" - button - cell ""01:32:51"": @@ -1758,11 +1758,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""19"" - cell ""Che&Mos & Halo Far Clear"": - - textbox: Che&Mos & Halo Far + - combobox: Che&Mos & Halo Far - button ""Clear"" - button - cell ""Daddy Clear"": - - textbox: Daddy + - combobox: Daddy - button ""Clear"" - button - cell ""01:42:13"": @@ -1779,11 +1779,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""20"" - cell ""K KARDEN Clear"": - - textbox: K KARDEN + - combobox: K KARDEN - button ""Clear"" - button - cell ""Acid Rain Clear"": - - textbox: Acid Rain + - combobox: Acid Rain - button ""Clear"" - button - cell ""01:45:22"": @@ -1800,11 +1800,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""21"" - cell ""Dobrov & Gar1sson Clear"": - - textbox: Dobrov & Gar1sson + - combobox: Dobrov & Gar1sson - button ""Clear"" - button - cell ""Analogic (Redspace Remix) Clear"": - - textbox: Analogic (Redspace Remix) + - combobox: Analogic (Redspace Remix) - button ""Clear"" - button - cell ""01:48:40"": @@ -1821,11 +1821,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""22"" - cell ""Gazfluz Clear"": - - textbox: Gazfluz + - combobox: Gazfluz - button ""Clear"" - button - cell ""Vargan Clear"": - - textbox: Vargan + - combobox: Vargan - button ""Clear"" - button - cell ""01:56:40"": @@ -1842,11 +1842,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""23"" - cell ""SHKAPOV Clear"": - - textbox: SHKAPOV + - combobox: SHKAPOV - button ""Clear"" - button - cell ""Control Clear"": - - textbox: Control + - combobox: Control - button ""Clear"" - button - cell ""02:00:39"": @@ -1863,11 +1863,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""24"" - cell ""QazaQ Clear"": - - textbox: QazaQ + - combobox: QazaQ - button ""Clear"" - button - cell ""On the Line Clear"": - - textbox: On the Line + - combobox: On the Line - button ""Clear"" - button - cell ""02:06:47"": @@ -1884,11 +1884,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""25"" - cell ""Alex Schaufel Clear"": - - textbox: Alex Schaufel + - combobox: Alex Schaufel - button ""Clear"" - button - cell ""Elizabeth (Larsun Hesh Remix) Clear"": - - textbox: Elizabeth (Larsun Hesh Remix) + - combobox: Elizabeth (Larsun Hesh Remix) - button ""Clear"" - button - cell ""02:09:09"": @@ -1905,11 +1905,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""26"" - cell ""Oiro Clear"": - - textbox: Oiro + - combobox: Oiro - button ""Clear"" - button - cell ""Just Business Clear"": - - textbox: Just Business + - combobox: Just Business - button ""Clear"" - button - cell ""02:14:18"": @@ -1926,11 +1926,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""27"" - cell ""Molex Clear"": - - textbox: Molex + - combobox: Molex - button ""Clear"" - button - cell ""Mind Split (Redspace Remix) Clear"": - - textbox: Mind Split (Redspace Remix) + - combobox: Mind Split (Redspace Remix) - button ""Clear"" - button - cell ""02:19:22"": @@ -1947,11 +1947,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""28"" - cell ""SOLI Clear"": - - textbox: SOLI + - combobox: SOLI - button ""Clear"" - button - cell ""Give Me Your Mind Clear"": - - textbox: Give Me Your Mind + - combobox: Give Me Your Mind - button ""Clear"" - button - cell ""02:27:48"": @@ -1968,11 +1968,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""29"" - cell ""MANDU Clear"": - - textbox: MANDU + - combobox: MANDU - button ""Clear"" - button - cell ""Jacky Clear"": - - textbox: Jacky + - combobox: Jacky - button ""Clear"" - button - cell ""02:33:48"": @@ -1989,11 +1989,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""30"" - cell ""SOLI Clear"": - - textbox: SOLI + - combobox: SOLI - button ""Clear"" - button - cell ""Spacetoon Clear"": - - textbox: Spacetoon + - combobox: Spacetoon - button ""Clear"" - button - cell ""02:39:05"": @@ -2010,11 +2010,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""31"" - cell ""Sasha Fashion Clear"": - - textbox: Sasha Fashion + - combobox: Sasha Fashion - button ""Clear"" - button - cell ""Moqton Clear"": - - textbox: Moqton + - combobox: Moqton - button ""Clear"" - button - cell ""02:41:31"": @@ -2031,11 +2031,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""32"" - cell ""NAASA Clear"": - - textbox: NAASA + - combobox: NAASA - button ""Clear"" - button - cell ""Poison Clear"": - - textbox: Poison + - combobox: Poison - button ""Clear"" - button - cell ""02:50:18"": @@ -2052,11 +2052,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""33"" - cell ""Nopopstar, 2JOHN'S & Eugene Jay Clear"": - - textbox: Nopopstar, 2JOHN'S & Eugene Jay + - combobox: Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Nightlong Clear"": - - textbox: Nightlong + - combobox: Nightlong - button ""Clear"" - button - cell ""02:56:45"": @@ -2073,11 +2073,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""34"" - cell ""Skillz jay Clear"": - - textbox: Skillz jay + - combobox: Skillz jay - button ""Clear"" - button - cell ""Choir Clear"": - - textbox: Choir + - combobox: Choir - button ""Clear"" - button - cell ""02:59:14"": @@ -2094,11 +2094,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""35"" - cell ""Kovax Clear"": - - textbox: Kovax + - combobox: Kovax - button ""Clear"" - button - cell ""Controller Clear"": - - textbox: Controller + - combobox: Controller - button ""Clear"" - button - cell ""03:05:49"": @@ -2115,11 +2115,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""36"" - cell ""Mumboi Clear"": - - textbox: Mumboi + - combobox: Mumboi - button ""Clear"" - button - cell ""Just a Beat Clear"": - - textbox: Just a Beat + - combobox: Just a Beat - button ""Clear"" - button - cell ""03:08:31"": @@ -2136,11 +2136,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""37"" - cell ""Eclept Clear"": - - textbox: Eclept + - combobox: Eclept - button ""Clear"" - button - cell ""Sprut Clear"": - - textbox: Sprut + - combobox: Sprut - button ""Clear"" - button - cell ""03:15:18"": @@ -2157,11 +2157,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""38"" - cell ""Rudensky Clear"": - - textbox: Rudensky + - combobox: Rudensky - button ""Clear"" - button - cell ""Dark Escort Clear"": - - textbox: Dark Escort + - combobox: Dark Escort - button ""Clear"" - button - cell ""03:20:35"": @@ -2178,11 +2178,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""39"" - cell ""Alexey Union, Kinky Sound & KOCHETOV Clear"": - - textbox: Alexey Union, Kinky Sound & KOCHETOV + - combobox: Alexey Union, Kinky Sound & KOCHETOV - button ""Clear"" - button - cell ""Connected Clear"": - - textbox: Connected + - combobox: Connected - button ""Clear"" - button - cell ""03:25:02"": @@ -2199,11 +2199,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""40"" - cell ""ANMA (MD) Clear"": - - textbox: ANMA (MD) + - combobox: ANMA (MD) - button ""Clear"" - button - cell ""Space Yoda (Snyl Remix) Clear"": - - textbox: Space Yoda (Snyl Remix) + - combobox: Space Yoda (Snyl Remix) - button ""Clear"" - button - cell ""03:32:30"": @@ -2220,11 +2220,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""41"" - cell ""Inache Clear"": - - textbox: Inache + - combobox: Inache - button ""Clear"" - button - cell ""Andale (MONTA (TN) Remix) Clear"": - - textbox: Andale (MONTA (TN) Remix) + - combobox: Andale (MONTA (TN) Remix) - button ""Clear"" - button - cell ""03:37:53"": @@ -2267,11 +2267,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -2287,11 +2287,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -2308,11 +2308,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -2329,11 +2329,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -2350,11 +2350,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title 5 Clear"": - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -2371,11 +2371,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -2392,11 +2392,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -2413,11 +2413,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": @@ -2462,11 +2462,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -2482,11 +2482,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -2503,11 +2503,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -2524,11 +2524,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -2545,11 +2545,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title 5 Clear"": - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -2566,11 +2566,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -2587,11 +2587,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -2608,11 +2608,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": @@ -2657,11 +2657,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Sample Artist 1 Clear"": - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Sample Title 1 Clear"": - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -2677,11 +2677,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Sample Artist 2 Clear"": - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Sample Title 2 Clear"": - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""00:05:00"": @@ -2698,11 +2698,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Sample Artist 3 Clear"": - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Sample Title 3 Clear"": - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""00:09:23"": @@ -2719,11 +2719,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Sample Artist 4 Clear"": - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Sample Title 4 Clear"": - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""00:15:54"": @@ -2740,11 +2740,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Sample Artist 5 Clear"": - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Sample Title 5 Clear"": - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""00:20:13"": @@ -2761,11 +2761,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Sample Artist 6 Clear"": - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Sample Title 6 Clear"": - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""00:24:54"": @@ -2782,11 +2782,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sample Artist 7 Clear"": - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Sample Title 7 Clear"": - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""00:31:54"": @@ -2803,11 +2803,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Sample Artist 8 Clear"": - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Sample Title 8 Clear"": - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""00:45:54"": diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs index 28dedde8..3fe08571 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs @@ -110,7 +110,7 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); await bar.OpenExportDialogAsync("Textfile"); - await TestPage.GetByRole(AriaRole.Button, new() { Name = "Next", Exact = true }).ClickAsync(); + await TestPage.GetByRole(AriaRole.Button, new() { Name = "Generate export" }).ClickAsync(); //TODO: Assert scrollbars var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ImportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ImportTest.cs index bb24ec81..f5ff4614 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ImportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ImportTest.cs @@ -41,12 +41,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -66,12 +66,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -93,12 +93,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -120,12 +120,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -147,12 +147,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title 5 Clear"": - text: Title - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -174,12 +174,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -201,12 +201,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -228,12 +228,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": @@ -273,12 +273,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -298,12 +298,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -325,12 +325,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -352,12 +352,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -379,12 +379,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title Edited 5 Clear"": - text: Title - - textbox: Sample Title Edited 5 + - combobox: Sample Title Edited 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -406,12 +406,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -433,12 +433,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -460,12 +460,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": @@ -500,12 +500,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Adriatique Clear"": - text: Artist - - textbox: Adriatique + - combobox: Adriatique - button ""Clear"" - button - cell ""Title X. Clear"": - text: Title - - textbox: X. + - combobox: X. - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -524,12 +524,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Third Harmony Clear"": - text: Artist - - textbox: Third Harmony + - combobox: Third Harmony - button ""Clear"" - button - cell ""Title Fears And Dreams (Original Mix) Clear"": - text: Title - - textbox: Fears And Dreams (Original Mix) + - combobox: Fears And Dreams (Original Mix) - button ""Clear"" - button - cell ""Begin 00:05:24"": @@ -548,12 +548,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Dele Sosimi Afrobeat Orchestra Clear"": - text: Artist - - textbox: Dele Sosimi Afrobeat Orchestra + - combobox: Dele Sosimi Afrobeat Orchestra - button ""Clear"" - button - cell ""Title Too Much Information (Laolu Remix; Edit) Clear"": - text: Title - - textbox: Too Much Information (Laolu Remix; Edit) + - combobox: Too Much Information (Laolu Remix; Edit) - button ""Clear"" - button - cell ""Begin 00:10:39"": @@ -572,12 +572,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Edem, Govan Clear"": - text: Artist - - textbox: Edem, Govan + - combobox: Edem, Govan - button ""Clear"" - button - cell ""Title Ankh (Onetwo MX Remix) Clear"": - text: Title - - textbox: Ankh (Onetwo MX Remix) + - combobox: Ankh (Onetwo MX Remix) - button ""Clear"" - button - cell ""Begin 00:17:06"": @@ -596,12 +596,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Jody Wisternoff Clear"": - text: Artist - - textbox: Jody Wisternoff + - combobox: Jody Wisternoff - button ""Clear"" - button - cell ""Title For All Time (feat. Hendrik Burkhard) (Extended Mix) Clear"": - text: Title - - textbox: For All Time (feat. Hendrik Burkhard) (Extended Mix) + - combobox: For All Time (feat. Hendrik Burkhard) (Extended Mix) - button ""Clear"" - button - cell ""Begin 00:23:21"": @@ -620,12 +620,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Einmusik Clear"": - text: Artist - - textbox: Einmusik + - combobox: Einmusik - button ""Clear"" - button - cell ""Title Bead (Original Mix) Clear"": - text: Title - - textbox: Bead (Original Mix) + - combobox: Bead (Original Mix) - button ""Clear"" - button - cell ""Begin 00:29:02"": @@ -644,12 +644,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sebastien Leger Clear"": - text: Artist - - textbox: Sebastien Leger + - combobox: Sebastien Leger - button ""Clear"" - button - cell ""Title La Danse du Scorpion Clear"": - text: Title - - textbox: La Danse du Scorpion + - combobox: La Danse du Scorpion - button ""Clear"" - button - cell ""Begin 00:34:27"": @@ -668,12 +668,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Paul Thomas & Solid Stone Clear"": - text: Artist - - textbox: Paul Thomas & Solid Stone + - combobox: Paul Thomas & Solid Stone - button ""Clear"" - button - cell ""Title La Bombo (Solid Stone Remix) Clear"": - text: Title - - textbox: La Bombo (Solid Stone Remix) + - combobox: La Bombo (Solid Stone Remix) - button ""Clear"" - button - cell ""Begin 00:40:59"": @@ -692,12 +692,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 9"" - cell ""Artist GusGus Clear"": - text: Artist - - textbox: GusGus + - combobox: GusGus - button ""Clear"" - button - cell ""Title Crossfade (Maceo Plex Mix) Clear"": - text: Title - - textbox: Crossfade (Maceo Plex Mix) + - combobox: Crossfade (Maceo Plex Mix) - button ""Clear"" - button - cell ""Begin 00:46:19"": @@ -716,12 +716,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 10"" - cell ""Artist Klangkarussell Clear"": - text: Artist - - textbox: Klangkarussell + - combobox: Klangkarussell - button ""Clear"" - button - cell ""Title Time (Original Mix) Clear"": - text: Title - - textbox: Time (Original Mix) + - combobox: Time (Original Mix) - button ""Clear"" - button - cell ""Begin 00:52:20"": @@ -740,12 +740,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 11"" - cell ""Artist Anysense & Un:said Clear"": - text: Artist - - textbox: Anysense & Un:said + - combobox: Anysense & Un:said - button ""Clear"" - button - cell ""Title Missing Path (Original Mix) Clear"": - text: Title - - textbox: Missing Path (Original Mix) + - combobox: Missing Path (Original Mix) - button ""Clear"" - button - cell ""Begin 00:56:19"": @@ -764,12 +764,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 12"" - cell ""Artist Space Food Clear"": - text: Artist - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Title Bombay Clear"": - text: Title - - textbox: Bombay + - combobox: Bombay - button ""Clear"" - button - cell ""Begin 01:01:41"": @@ -788,12 +788,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 13"" - cell ""Artist SHDW & Obscure Shape Clear"": - text: Artist - - textbox: SHDW & Obscure Shape + - combobox: SHDW & Obscure Shape - button ""Clear"" - button - cell ""Title Wächter der Nacht (Original Mix) Clear"": - text: Title - - textbox: Wächter der Nacht (Original Mix) + - combobox: Wächter der Nacht (Original Mix) - button ""Clear"" - button - cell ""Begin 01:06:33"": @@ -812,12 +812,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 14"" - cell ""Artist HOSH Clear"": - text: Artist - - textbox: HOSH + - combobox: HOSH - button ""Clear"" - button - cell ""Title Karma Clear"": - text: Title - - textbox: Karma + - combobox: Karma - button ""Clear"" - button - cell ""Begin 01:11:04"": @@ -836,12 +836,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 15"" - cell ""Artist Alexey Union Clear"": - text: Artist - - textbox: Alexey Union + - combobox: Alexey Union - button ""Clear"" - button - cell ""Title Olympia (Original Mix) Clear"": - text: Title - - textbox: Olympia (Original Mix) + - combobox: Olympia (Original Mix) - button ""Clear"" - button - cell ""Begin 01:15:28"": @@ -860,12 +860,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 16"" - cell ""Artist Paul Taylor Clear"": - text: Artist - - textbox: Paul Taylor + - combobox: Paul Taylor - button ""Clear"" - button - cell ""Title Afterglow Clear"": - text: Title - - textbox: Afterglow + - combobox: Afterglow - button ""Clear"" - button - cell ""Begin 01:21:08"": @@ -884,12 +884,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 17"" - cell ""Artist Philter Clear"": - text: Artist - - textbox: Philter + - combobox: Philter - button ""Clear"" - button - cell ""Title Stranger Clear"": - text: Title - - textbox: Stranger + - combobox: Stranger - button ""Clear"" - button - cell ""Begin 01:25:38"": @@ -908,12 +908,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 18"" - cell ""Artist Skizologic Clear"": - text: Artist - - textbox: Skizologic + - combobox: Skizologic - button ""Clear"" - button - cell ""Title Hypersphere (Original Mix) Clear"": - text: Title - - textbox: Hypersphere (Original Mix) + - combobox: Hypersphere (Original Mix) - button ""Clear"" - button - cell ""Begin 01:31:52"": @@ -932,12 +932,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 19"" - cell ""Artist Thomas Schumacher, Caitlin Clear"": - text: Artist - - textbox: Thomas Schumacher, Caitlin + - combobox: Thomas Schumacher, Caitlin - button ""Clear"" - button - cell ""Title All of You (Remix) Clear"": - text: Title - - textbox: All of You (Remix) + - combobox: All of You (Remix) - button ""Clear"" - button - cell ""Begin 01:36:40"": @@ -956,12 +956,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 20"" - cell ""Artist A. Skomoroh Clear"": - text: Artist - - textbox: A. Skomoroh + - combobox: A. Skomoroh - button ""Clear"" - button - cell ""Title White Horse Conquest (Original Mix) Clear"": - text: Title - - textbox: White Horse Conquest (Original Mix) + - combobox: White Horse Conquest (Original Mix) - button ""Clear"" - button - cell ""Begin 01:42:16"": @@ -980,12 +980,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 21"" - cell ""Artist Patrik Berg Clear"": - text: Artist - - textbox: Patrik Berg + - combobox: Patrik Berg - button ""Clear"" - button - cell ""Title Bright (Original Mix) Clear"": - text: Title - - textbox: Bright (Original Mix) + - combobox: Bright (Original Mix) - button ""Clear"" - button - cell ""Begin 01:47:04"": @@ -1004,12 +1004,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 22"" - cell ""Artist Hidden Empire Clear"": - text: Artist - - textbox: Hidden Empire + - combobox: Hidden Empire - button ""Clear"" - button - cell ""Title Bengal Clear"": - text: Title - - textbox: Bengal + - combobox: Bengal - button ""Clear"" - button - cell ""Begin 01:52:37"": @@ -1028,12 +1028,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 23"" - cell ""Artist Mario Ochoa Clear"": - text: Artist - - textbox: Mario Ochoa + - combobox: Mario Ochoa - button ""Clear"" - button - cell ""Title Levitate Clear"": - text: Title - - textbox: Levitate + - combobox: Levitate - button ""Clear"" - button - cell ""Begin 01:58:05"": @@ -1052,12 +1052,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 24"" - cell ""Artist Raul Facio Clear"": - text: Artist - - textbox: Raul Facio + - combobox: Raul Facio - button ""Clear"" - button - cell ""Title Eyes Wide Shut (Original Mix) Clear"": - text: Title - - textbox: Eyes Wide Shut (Original Mix) + - combobox: Eyes Wide Shut (Original Mix) - button ""Clear"" - button - cell ""Begin 02:03:00"": @@ -1076,12 +1076,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 25"" - cell ""Artist Soolver Clear"": - text: Artist - - textbox: Soolver + - combobox: Soolver - button ""Clear"" - button - cell ""Title Regular (Original Mix) Clear"": - text: Title - - textbox: Regular (Original Mix) + - combobox: Regular (Original Mix) - button ""Clear"" - button - cell ""Begin 02:08:21"": @@ -1100,12 +1100,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 26"" - cell ""Artist Weska Clear"": - text: Artist - - textbox: Weska + - combobox: Weska - button ""Clear"" - button - cell ""Title EQ64 (Original Mix) Clear"": - text: Title - - textbox: EQ64 (Original Mix) + - combobox: EQ64 (Original Mix) - button ""Clear"" - button - cell ""Begin 02:14:31"": @@ -1124,12 +1124,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 27"" - cell ""Artist Tempo Giusto Clear"": - text: Artist - - textbox: Tempo Giusto + - combobox: Tempo Giusto - button ""Clear"" - button - cell ""Title The Fall (Extended Mix) Clear"": - text: Title - - textbox: The Fall (Extended Mix) + - combobox: The Fall (Extended Mix) - button ""Clear"" - button - cell ""Begin 02:18:35"": @@ -1148,12 +1148,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 28"" - cell ""Artist Vlind & Asteroid & Gary Leroy Clear"": - text: Artist - - textbox: Vlind & Asteroid & Gary Leroy + - combobox: Vlind & Asteroid & Gary Leroy - button ""Clear"" - button - cell ""Title Trinity (Extended Mix) Clear"": - text: Title - - textbox: Trinity (Extended Mix) + - combobox: Trinity (Extended Mix) - button ""Clear"" - button - cell ""Begin 02:24:12"": @@ -1172,12 +1172,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 29"" - cell ""Artist Astral Legacy Clear"": - text: Artist - - textbox: Astral Legacy + - combobox: Astral Legacy - button ""Clear"" - button - cell ""Title Vaveyla (Original Mix) Clear"": - text: Title - - textbox: Vaveyla (Original Mix) + - combobox: Vaveyla (Original Mix) - button ""Clear"" - button - cell ""Begin 02:29:38"": @@ -1196,12 +1196,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 30"" - cell ""Artist Gerrox Clear"": - text: Artist - - textbox: Gerrox + - combobox: Gerrox - button ""Clear"" - button - cell ""Title Chakra (Original Mix) Clear"": - text: Title - - textbox: Chakra (Original Mix) + - combobox: Chakra (Original Mix) - button ""Clear"" - button - cell ""Begin 02:32:52"": @@ -1220,12 +1220,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 31"" - cell ""Artist Charlotte De Witte Clear"": - text: Artist - - textbox: Charlotte De Witte + - combobox: Charlotte De Witte - button ""Clear"" - button - cell ""Title Pattern Clear"": - text: Title - - textbox: Pattern + - combobox: Pattern - button ""Clear"" - button - cell ""Begin 02:37:00"": @@ -1244,12 +1244,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 32"" - cell ""Artist Space Food Clear"": - text: Artist - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Title Amabey Clear"": - text: Title - - textbox: Amabey + - combobox: Amabey - button ""Clear"" - button - cell ""Begin 02:41:55"": @@ -1268,12 +1268,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 33"" - cell ""Artist ARTBAT Clear"": - text: Artist - - textbox: ARTBAT + - combobox: ARTBAT - button ""Clear"" - button - cell ""Title Papilion (Original Mix) Clear"": - text: Title - - textbox: Papilion (Original Mix) + - combobox: Papilion (Original Mix) - button ""Clear"" - button - cell ""Begin 02:46:55"": @@ -1292,12 +1292,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 34"" - cell ""Artist PETER PAHN Clear"": - text: Artist - - textbox: PETER PAHN + - combobox: PETER PAHN - button ""Clear"" - button - cell ""Title Enjoy Infinity (Original Mix) Clear"": - text: Title - - textbox: Enjoy Infinity (Original Mix) + - combobox: Enjoy Infinity (Original Mix) - button ""Clear"" - button - cell ""Begin 02:51:13"": @@ -1316,12 +1316,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 35"" - cell ""Artist Solitek Clear"": - text: Artist - - textbox: Solitek + - combobox: Solitek - button ""Clear"" - button - cell ""Title Instinct (Original Mix) Clear"": - text: Title - - textbox: Instinct (Original Mix) + - combobox: Instinct (Original Mix) - button ""Clear"" - button - cell ""Begin 02:56:08"": @@ -1340,12 +1340,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 36"" - cell ""Artist Veerus Clear"": - text: Artist - - textbox: Veerus + - combobox: Veerus - button ""Clear"" - button - cell ""Title Heavy Clear"": - text: Title - - textbox: Heavy + - combobox: Heavy - button ""Clear"" - button - cell ""Begin 03:00:57"": @@ -1364,12 +1364,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 37"" - cell ""Artist Secret Cinema & Reinier Zonneveld Clear"": - text: Artist - - textbox: Secret Cinema & Reinier Zonneveld + - combobox: Secret Cinema & Reinier Zonneveld - button ""Clear"" - button - cell ""Title Pain Thing (Original Mix) Clear"": - text: Title - - textbox: Pain Thing (Original Mix) + - combobox: Pain Thing (Original Mix) - button ""Clear"" - button - cell ""Begin 03:05:19"": @@ -1388,12 +1388,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 38"" - cell ""Artist Amelie Lens Clear"": - text: Artist - - textbox: Amelie Lens + - combobox: Amelie Lens - button ""Clear"" - button - cell ""Title Hypnotized Clear"": - text: Title - - textbox: Hypnotized + - combobox: Hypnotized - button ""Clear"" - button - cell ""Begin 03:09:38"": @@ -1412,12 +1412,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 39"" - cell ""Artist Nikolay Kirov Clear"": - text: Artist - - textbox: Nikolay Kirov + - combobox: Nikolay Kirov - button ""Clear"" - button - cell ""Title Chasing the Sun (Original Mix) Clear"": - text: Title - - textbox: Chasing the Sun (Original Mix) + - combobox: Chasing the Sun (Original Mix) - button ""Clear"" - button - cell ""Begin 03:13:13"": @@ -1452,12 +1452,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -1476,12 +1476,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -1500,12 +1500,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -1524,12 +1524,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -1548,12 +1548,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title 5 Clear"": - text: Title - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -1572,12 +1572,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -1596,12 +1596,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -1620,12 +1620,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": @@ -1658,12 +1658,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Nachap Clear"": - text: Artist - - textbox: Nachap + - combobox: Nachap - button ""Clear"" - button - cell ""Title Glass Clear"": - text: Title - - textbox: Glass + - combobox: Glass - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -1683,11 +1683,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title Progressive + Melodic DECK Clear"": - text: Title - - textbox: Progressive + Melodic DECK + - combobox: Progressive + Melodic DECK - button ""Clear"" - button - cell ""Begin 00:11:56"": @@ -1709,12 +1709,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Nomer 21 Clear"": - text: Artist - - textbox: Nomer 21 + - combobox: Nomer 21 - button ""Clear"" - button - cell ""Title Depersonalization Clear"": - text: Title - - textbox: Depersonalization + - combobox: Depersonalization - button ""Clear"" - button - cell ""Begin 00:13:31"": @@ -1736,12 +1736,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - text: Artist - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Title Showing Off Clear"": - text: Title - - textbox: Showing Off + - combobox: Showing Off - button ""Clear"" - button - cell ""Begin 00:19:14"": @@ -1763,12 +1763,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Carlo Whale Clear"": - text: Artist - - textbox: Carlo Whale + - combobox: Carlo Whale - button ""Clear"" - button - cell ""Title Unconscious Clear"": - text: Title - - textbox: Unconscious + - combobox: Unconscious - button ""Clear"" - button - cell ""Begin 00:24:02"": @@ -1790,12 +1790,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Arba Han Clear"": - text: Artist - - textbox: Arba Han + - combobox: Arba Han - button ""Clear"" - button - cell ""Title Timelaps Clear"": - text: Title - - textbox: Timelaps + - combobox: Timelaps - button ""Clear"" - button - cell ""Begin 00:29:37"": @@ -1817,12 +1817,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Savill Clear"": - text: Artist - - textbox: Savill + - combobox: Savill - button ""Clear"" - button - cell ""Title Energy Surrounds Clear"": - text: Title - - textbox: Energy Surrounds + - combobox: Energy Surrounds - button ""Clear"" - button - cell ""Begin 00:33:13"": @@ -1844,12 +1844,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Teklix Clear"": - text: Artist - - textbox: Teklix + - combobox: Teklix - button ""Clear"" - button - cell ""Title The Tribal Code Clear"": - text: Title - - textbox: The Tribal Code + - combobox: The Tribal Code - button ""Clear"" - button - cell ""Begin 00:40:30"": @@ -1871,12 +1871,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 9"" - cell ""Artist Neuralis Clear"": - text: Artist - - textbox: Neuralis + - combobox: Neuralis - button ""Clear"" - button - cell ""Title I'm Looking for Answers Clear"": - text: Title - - textbox: I'm Looking for Answers + - combobox: I'm Looking for Answers - button ""Clear"" - button - cell ""Begin 00:48:53"": @@ -1898,12 +1898,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 10"" - cell ""Artist Nopopstar & Arsia Clear"": - text: Artist - - textbox: Nopopstar & Arsia + - combobox: Nopopstar & Arsia - button ""Clear"" - button - cell ""Title Dirty Moves Clear"": - text: Title - - textbox: Dirty Moves + - combobox: Dirty Moves - button ""Clear"" - button - cell ""Begin 00:54:34"": @@ -1925,12 +1925,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 11"" - cell ""Artist SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - text: Artist - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Title Lost (Maze 28 Remix) Clear"": - text: Title - - textbox: Lost (Maze 28 Remix) + - combobox: Lost (Maze 28 Remix) - button ""Clear"" - button - cell ""Begin 01:00:24"": @@ -1952,12 +1952,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 12"" - cell ""Artist SevenEver, Nopopstar, 2JOHN'S & Eugene Jay Clear"": - text: Artist - - textbox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay + - combobox: SevenEver, Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Title Lost (Redspace Remix) Clear"": - text: Title - - textbox: Lost (Redspace Remix) + - combobox: Lost (Redspace Remix) - button ""Clear"" - button - cell ""Begin 01:05:17"": @@ -1979,12 +1979,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 13"" - cell ""Artist Gadoz Clear"": - text: Artist - - textbox: Gadoz + - combobox: Gadoz - button ""Clear"" - button - cell ""Title 5d Clear"": - text: Title - - textbox: 5d + - combobox: 5d - button ""Clear"" - button - cell ""Begin 01:08:22"": @@ -2006,12 +2006,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 14"" - cell ""Artist DJ Danzik Clear"": - text: Artist - - textbox: DJ Danzik + - combobox: DJ Danzik - button ""Clear"" - button - cell ""Title Out of Space Clear"": - text: Title - - textbox: Out of Space + - combobox: Out of Space - button ""Clear"" - button - cell ""Begin 01:16:34"": @@ -2033,12 +2033,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 15"" - cell ""Artist Enis Çoban Clear"": - text: Artist - - textbox: Enis Çoban + - combobox: Enis Çoban - button ""Clear"" - button - cell ""Title Internet Clear"": - text: Title - - textbox: Internet + - combobox: Internet - button ""Clear"" - button - cell ""Begin 01:19:22"": @@ -2060,12 +2060,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 16"" - cell ""Artist Cold Mind & Alex Yikker Clear"": - text: Artist - - textbox: Cold Mind & Alex Yikker + - combobox: Cold Mind & Alex Yikker - button ""Clear"" - button - cell ""Title Rage Clear"": - text: Title - - textbox: Rage + - combobox: Rage - button ""Clear"" - button - cell ""Begin 01:25:14"": @@ -2087,12 +2087,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 17"" - cell ""Artist Maze 28 Clear"": - text: Artist - - textbox: Maze 28 + - combobox: Maze 28 - button ""Clear"" - button - cell ""Title Sol (JAHAYA Remix) Clear"": - text: Title - - textbox: Sol (JAHAYA Remix) + - combobox: Sol (JAHAYA Remix) - button ""Clear"" - button - cell ""Begin 01:31:33"": @@ -2114,12 +2114,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 18"" - cell ""Artist Alex Grafton Clear"": - text: Artist - - textbox: Alex Grafton + - combobox: Alex Grafton - button ""Clear"" - button - cell ""Title Hi Baby Clear"": - text: Title - - textbox: Hi Baby + - combobox: Hi Baby - button ""Clear"" - button - cell ""Begin 01:32:51"": @@ -2141,12 +2141,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 19"" - cell ""Artist Che&Mos & Halo Far Clear"": - text: Artist - - textbox: Che&Mos & Halo Far + - combobox: Che&Mos & Halo Far - button ""Clear"" - button - cell ""Title Daddy Clear"": - text: Title - - textbox: Daddy + - combobox: Daddy - button ""Clear"" - button - cell ""Begin 01:42:13"": @@ -2168,12 +2168,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 20"" - cell ""Artist K KARDEN Clear"": - text: Artist - - textbox: K KARDEN + - combobox: K KARDEN - button ""Clear"" - button - cell ""Title Acid Rain Clear"": - text: Title - - textbox: Acid Rain + - combobox: Acid Rain - button ""Clear"" - button - cell ""Begin 01:45:22"": @@ -2195,12 +2195,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 21"" - cell ""Artist Dobrov & Gar1sson Clear"": - text: Artist - - textbox: Dobrov & Gar1sson + - combobox: Dobrov & Gar1sson - button ""Clear"" - button - cell ""Title Analogic (Redspace Remix) Clear"": - text: Title - - textbox: Analogic (Redspace Remix) + - combobox: Analogic (Redspace Remix) - button ""Clear"" - button - cell ""Begin 01:48:40"": @@ -2222,12 +2222,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 22"" - cell ""Artist Gazfluz Clear"": - text: Artist - - textbox: Gazfluz + - combobox: Gazfluz - button ""Clear"" - button - cell ""Title Vargan Clear"": - text: Title - - textbox: Vargan + - combobox: Vargan - button ""Clear"" - button - cell ""Begin 01:56:40"": @@ -2249,12 +2249,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 23"" - cell ""Artist SHKAPOV Clear"": - text: Artist - - textbox: SHKAPOV + - combobox: SHKAPOV - button ""Clear"" - button - cell ""Title Control Clear"": - text: Title - - textbox: Control + - combobox: Control - button ""Clear"" - button - cell ""Begin 02:00:39"": @@ -2276,12 +2276,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 24"" - cell ""Artist QazaQ Clear"": - text: Artist - - textbox: QazaQ + - combobox: QazaQ - button ""Clear"" - button - cell ""Title On the Line Clear"": - text: Title - - textbox: On the Line + - combobox: On the Line - button ""Clear"" - button - cell ""Begin 02:06:47"": @@ -2303,12 +2303,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 25"" - cell ""Artist Alex Schaufel Clear"": - text: Artist - - textbox: Alex Schaufel + - combobox: Alex Schaufel - button ""Clear"" - button - cell ""Title Elizabeth (Larsun Hesh Remix) Clear"": - text: Title - - textbox: Elizabeth (Larsun Hesh Remix) + - combobox: Elizabeth (Larsun Hesh Remix) - button ""Clear"" - button - cell ""Begin 02:09:09"": @@ -2330,12 +2330,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 26"" - cell ""Artist Oiro Clear"": - text: Artist - - textbox: Oiro + - combobox: Oiro - button ""Clear"" - button - cell ""Title Just Business Clear"": - text: Title - - textbox: Just Business + - combobox: Just Business - button ""Clear"" - button - cell ""Begin 02:14:18"": @@ -2357,12 +2357,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 27"" - cell ""Artist Molex Clear"": - text: Artist - - textbox: Molex + - combobox: Molex - button ""Clear"" - button - cell ""Title Mind Split (Redspace Remix) Clear"": - text: Title - - textbox: Mind Split (Redspace Remix) + - combobox: Mind Split (Redspace Remix) - button ""Clear"" - button - cell ""Begin 02:19:22"": @@ -2384,12 +2384,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 28"" - cell ""Artist SOLI Clear"": - text: Artist - - textbox: SOLI + - combobox: SOLI - button ""Clear"" - button - cell ""Title Give Me Your Mind Clear"": - text: Title - - textbox: Give Me Your Mind + - combobox: Give Me Your Mind - button ""Clear"" - button - cell ""Begin 02:27:48"": @@ -2411,12 +2411,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 29"" - cell ""Artist MANDU Clear"": - text: Artist - - textbox: MANDU + - combobox: MANDU - button ""Clear"" - button - cell ""Title Jacky Clear"": - text: Title - - textbox: Jacky + - combobox: Jacky - button ""Clear"" - button - cell ""Begin 02:33:48"": @@ -2438,12 +2438,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 30"" - cell ""Artist SOLI Clear"": - text: Artist - - textbox: SOLI + - combobox: SOLI - button ""Clear"" - button - cell ""Title Spacetoon Clear"": - text: Title - - textbox: Spacetoon + - combobox: Spacetoon - button ""Clear"" - button - cell ""Begin 02:39:05"": @@ -2465,12 +2465,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 31"" - cell ""Artist Sasha Fashion Clear"": - text: Artist - - textbox: Sasha Fashion + - combobox: Sasha Fashion - button ""Clear"" - button - cell ""Title Moqton Clear"": - text: Title - - textbox: Moqton + - combobox: Moqton - button ""Clear"" - button - cell ""Begin 02:41:31"": @@ -2492,12 +2492,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 32"" - cell ""Artist NAASA Clear"": - text: Artist - - textbox: NAASA + - combobox: NAASA - button ""Clear"" - button - cell ""Title Poison Clear"": - text: Title - - textbox: Poison + - combobox: Poison - button ""Clear"" - button - cell ""Begin 02:50:18"": @@ -2519,12 +2519,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 33"" - cell ""Artist Nopopstar, 2JOHN'S & Eugene Jay Clear"": - text: Artist - - textbox: Nopopstar, 2JOHN'S & Eugene Jay + - combobox: Nopopstar, 2JOHN'S & Eugene Jay - button ""Clear"" - button - cell ""Title Nightlong Clear"": - text: Title - - textbox: Nightlong + - combobox: Nightlong - button ""Clear"" - button - cell ""Begin 02:56:45"": @@ -2546,12 +2546,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 34"" - cell ""Artist Skillz jay Clear"": - text: Artist - - textbox: Skillz jay + - combobox: Skillz jay - button ""Clear"" - button - cell ""Title Choir Clear"": - text: Title - - textbox: Choir + - combobox: Choir - button ""Clear"" - button - cell ""Begin 02:59:14"": @@ -2573,12 +2573,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 35"" - cell ""Artist Kovax Clear"": - text: Artist - - textbox: Kovax + - combobox: Kovax - button ""Clear"" - button - cell ""Title Controller Clear"": - text: Title - - textbox: Controller + - combobox: Controller - button ""Clear"" - button - cell ""Begin 03:05:49"": @@ -2600,12 +2600,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 36"" - cell ""Artist Mumboi Clear"": - text: Artist - - textbox: Mumboi + - combobox: Mumboi - button ""Clear"" - button - cell ""Title Just a Beat Clear"": - text: Title - - textbox: Just a Beat + - combobox: Just a Beat - button ""Clear"" - button - cell ""Begin 03:08:31"": @@ -2627,12 +2627,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 37"" - cell ""Artist Eclept Clear"": - text: Artist - - textbox: Eclept + - combobox: Eclept - button ""Clear"" - button - cell ""Title Sprut Clear"": - text: Title - - textbox: Sprut + - combobox: Sprut - button ""Clear"" - button - cell ""Begin 03:15:18"": @@ -2654,12 +2654,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 38"" - cell ""Artist Rudensky Clear"": - text: Artist - - textbox: Rudensky + - combobox: Rudensky - button ""Clear"" - button - cell ""Title Dark Escort Clear"": - text: Title - - textbox: Dark Escort + - combobox: Dark Escort - button ""Clear"" - button - cell ""Begin 03:20:35"": @@ -2681,12 +2681,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 39"" - cell ""Artist Alexey Union, Kinky Sound & KOCHETOV Clear"": - text: Artist - - textbox: Alexey Union, Kinky Sound & KOCHETOV + - combobox: Alexey Union, Kinky Sound & KOCHETOV - button ""Clear"" - button - cell ""Title Connected Clear"": - text: Title - - textbox: Connected + - combobox: Connected - button ""Clear"" - button - cell ""Begin 03:25:02"": @@ -2708,12 +2708,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 40"" - cell ""Artist ANMA (MD) Clear"": - text: Artist - - textbox: ANMA (MD) + - combobox: ANMA (MD) - button ""Clear"" - button - cell ""Title Space Yoda (Snyl Remix) Clear"": - text: Title - - textbox: Space Yoda (Snyl Remix) + - combobox: Space Yoda (Snyl Remix) - button ""Clear"" - button - cell ""Begin 03:32:30"": @@ -2735,12 +2735,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 41"" - cell ""Artist Inache Clear"": - text: Artist - - textbox: Inache + - combobox: Inache - button ""Clear"" - button - cell ""Title Andale (MONTA (TN) Remix) Clear"": - text: Title - - textbox: Andale (MONTA (TN) Remix) + - combobox: Andale (MONTA (TN) Remix) - button ""Clear"" - button - cell ""Begin 03:37:53"": @@ -2776,12 +2776,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -2801,12 +2801,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -2828,12 +2828,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -2855,12 +2855,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -2882,12 +2882,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title 5 Clear"": - text: Title - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -2909,12 +2909,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -2936,12 +2936,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -2963,12 +2963,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": @@ -3006,12 +3006,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -3031,12 +3031,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -3058,12 +3058,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -3085,12 +3085,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -3112,12 +3112,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title 5 Clear"": - text: Title - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -3139,12 +3139,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -3166,12 +3166,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -3193,12 +3193,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": @@ -3236,12 +3236,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Sample Artist 1 Clear"": - text: Artist - - textbox: Sample Artist 1 + - combobox: Sample Artist 1 - button ""Clear"" - button - cell ""Title Sample Title 1 Clear"": - text: Title - - textbox: Sample Title 1 + - combobox: Sample Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -3261,12 +3261,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Sample Artist 2 Clear"": - text: Artist - - textbox: Sample Artist 2 + - combobox: Sample Artist 2 - button ""Clear"" - button - cell ""Title Sample Title 2 Clear"": - text: Title - - textbox: Sample Title 2 + - combobox: Sample Title 2 - button ""Clear"" - button - cell ""Begin 00:05:00"": @@ -3288,12 +3288,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Sample Artist 3 Clear"": - text: Artist - - textbox: Sample Artist 3 + - combobox: Sample Artist 3 - button ""Clear"" - button - cell ""Title Sample Title 3 Clear"": - text: Title - - textbox: Sample Title 3 + - combobox: Sample Title 3 - button ""Clear"" - button - cell ""Begin 00:09:23"": @@ -3315,12 +3315,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Sample Artist 4 Clear"": - text: Artist - - textbox: Sample Artist 4 + - combobox: Sample Artist 4 - button ""Clear"" - button - cell ""Title Sample Title 4 Clear"": - text: Title - - textbox: Sample Title 4 + - combobox: Sample Title 4 - button ""Clear"" - button - cell ""Begin 00:15:54"": @@ -3342,12 +3342,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Sample Artist 5 Clear"": - text: Artist - - textbox: Sample Artist 5 + - combobox: Sample Artist 5 - button ""Clear"" - button - cell ""Title Sample Title 5 Clear"": - text: Title - - textbox: Sample Title 5 + - combobox: Sample Title 5 - button ""Clear"" - button - cell ""Begin 00:20:13"": @@ -3369,12 +3369,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Sample Artist 6 Clear"": - text: Artist - - textbox: Sample Artist 6 + - combobox: Sample Artist 6 - button ""Clear"" - button - cell ""Title Sample Title 6 Clear"": - text: Title - - textbox: Sample Title 6 + - combobox: Sample Title 6 - button ""Clear"" - button - cell ""Begin 00:24:54"": @@ -3396,12 +3396,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sample Artist 7 Clear"": - text: Artist - - textbox: Sample Artist 7 + - combobox: Sample Artist 7 - button ""Clear"" - button - cell ""Title Sample Title 7 Clear"": - text: Title - - textbox: Sample Title 7 + - combobox: Sample Title 7 - button ""Clear"" - button - cell ""Begin 00:31:54"": @@ -3423,12 +3423,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Sample Artist 8 Clear"": - text: Artist - - textbox: Sample Artist 8 + - combobox: Sample Artist 8 - button ""Clear"" - button - cell ""Title Sample Title 8 Clear"": - text: Title - - textbox: Sample Title 8 + - combobox: Sample Title 8 - button ""Clear"" - button - cell ""Begin 00:45:54"": From bd50c18a8c450efe9f84c443571886c1796c87fd Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 10:43:55 +0200 Subject: [PATCH 13/17] Update RecordView.cs --- AudioCuesheetEditor.End2EndTests/Models/RecordView.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs b/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs index dd2bc472..fba8bafb 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs @@ -44,11 +44,11 @@ internal async Task StopRecordingAsync() internal async Task AddRecordingTrackAsync(string artist, string title) { - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Artist", Exact = true }).ClickAsync(); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Artist", Exact = true }).FillAsync(artist); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Artist", Exact = true }).PressAsync("Tab"); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).FillAsync(title); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).PressAsync("Tab"); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Artist" }).ClickAsync(); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Artist" }).FillAsync(artist); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Artist" }).PressAsync("Tab"); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).FillAsync(title); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).PressAsync("Tab"); await _page.GetByRole(AriaRole.Button, new() { Name = "Add track" }).ClickAsync(); } } From e5f03b6ebccca43672aa0665be05bcb7ce3f749a Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 12:50:47 +0200 Subject: [PATCH 14/17] fix tracing tests --- .../Models/DetailView.cs | 8 +- .../Tests/Desktop/TracingTest.cs | 198 +++++++++--------- .../Tests/Smartphone/TracingTest.cs | 196 ++++++++--------- 3 files changed, 201 insertions(+), 201 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs index d6551506..0211bd6c 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs @@ -95,10 +95,10 @@ internal async Task EditSelectedTracksModalAsync() internal async Task EditTracksModalAsync(string artist, string title, string end, IEnumerable flagsToSelect) { await _page.GetByRole(AriaRole.Button, new() { Name = "Edit selected tracks" }).ClickAsync(); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Artist", Exact = true }).FillAsync(artist); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Artist", Exact = true }).PressAsync("Tab"); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).FillAsync(title); - await _page.GetByRole(AriaRole.Textbox, new() { Name = "Title", Exact = true }).PressAsync("Tab"); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Artist" }).FillAsync(artist); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Artist" }).PressAsync("Tab"); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).FillAsync(title); + await _page.GetByRole(AriaRole.Combobox, new() { Name = "Title" }).PressAsync("Tab"); await _page.GetByRole(AriaRole.Textbox, new() { Name = "End" }).FillAsync(end); foreach (var flag in flagsToSelect) { diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/TracingTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/TracingTest.cs index 4bba8143..30f8cef1 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/TracingTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/TracingTest.cs @@ -56,10 +56,10 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell: - - textbox + - combobox - button - cell: - - textbox + - combobox - button - cell ""00:00:00"": - textbox: 00:00:00 @@ -92,11 +92,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Test Artist 1 Clear"": - - textbox: Test Artist 1 + - combobox: Test Artist 1 - button ""Clear"" - button - cell ""Test Title 1 Clear"": - - textbox: Test Title 1 + - combobox: Test Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -128,11 +128,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Mozart Clear"": - - textbox: Mozart + - combobox: Mozart - button ""Clear"" - button - cell ""Eine kleine Nachtmusik Clear"": - - textbox: Eine kleine Nachtmusik + - combobox: Eine kleine Nachtmusik - button ""Clear"" - button - cell ""00:00:00"": @@ -164,11 +164,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Mozart Clear"": - - textbox: Mozart + - combobox: Mozart - button ""Clear"" - button - cell ""Test Title 1 Clear"": - - textbox: Test Title 1 + - combobox: Test Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -211,11 +211,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Test Track Artist 1 Clear"": - - textbox: Test Track Artist 1 + - combobox: Test Track Artist 1 - button ""Clear"" - button - cell ""Test Track Title 1 Clear"": - - textbox: Test Track Title 1 + - combobox: Test Track Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -247,13 +247,13 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell: - - textbox + - combobox - button - cell: - - textbox + - combobox - button - cell ""00:00:00"": - - textbox: 00:00:00 + - textbox - cell: - textbox - cell: @@ -281,11 +281,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Test Track Artist 1 Clear"": - - textbox: Test Track Artist 1 + - combobox: Test Track Artist 1 - button ""Clear"" - button - cell ""Test Track Title 1 Clear"": - - textbox: Test Track Title 1 + - combobox: Test Track Title 1 - button ""Clear"" - button - cell ""00:00:00"": @@ -341,11 +341,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell ""Adriatique Clear"": - - textbox: Adriatique + - combobox: Adriatique - button ""Clear"" - button - cell ""X. Clear"": - - textbox: X. + - combobox: X. - button ""Clear"" - button - cell ""00:00:00"": @@ -361,11 +361,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell ""Third Harmony Clear"": - - textbox: Third Harmony + - combobox: Third Harmony - button ""Clear"" - button - cell ""Fears And Dreams (Original Mix) Clear"": - - textbox: Fears And Dreams (Original Mix) + - combobox: Fears And Dreams (Original Mix) - button ""Clear"" - button - cell ""00:05:24.2500000"": @@ -382,11 +382,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""3"" - cell ""Dele Sosimi Afrobeat Orchestra Clear"": - - textbox: Dele Sosimi Afrobeat Orchestra + - combobox: Dele Sosimi Afrobeat Orchestra - button ""Clear"" - button - cell ""Too Much Information (Laolu Remix; Edit) Clear"": - - textbox: Too Much Information (Laolu Remix; Edit) + - combobox: Too Much Information (Laolu Remix; Edit) - button ""Clear"" - button - cell ""00:10:39"": @@ -403,11 +403,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""4"" - cell ""Edem, Govan Clear"": - - textbox: Edem, Govan + - combobox: Edem, Govan - button ""Clear"" - button - cell ""Ankh (Onetwo MX Remix) Clear"": - - textbox: Ankh (Onetwo MX Remix) + - combobox: Ankh (Onetwo MX Remix) - button ""Clear"" - button - cell ""00:17:06"": @@ -424,11 +424,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""5"" - cell ""Jody Wisternoff Clear"": - - textbox: Jody Wisternoff + - combobox: Jody Wisternoff - button ""Clear"" - button - cell ""For All Time (feat. Hendrik Burkhard) (Extended Mix) Clear"": - - textbox: For All Time (feat. Hendrik Burkhard) (Extended Mix) + - combobox: For All Time (feat. Hendrik Burkhard) (Extended Mix) - button ""Clear"" - button - cell ""00:23:21"": @@ -445,11 +445,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""6"" - cell ""Einmusik Clear"": - - textbox: Einmusik + - combobox: Einmusik - button ""Clear"" - button - cell ""Bead (Original Mix) Clear"": - - textbox: Bead (Original Mix) + - combobox: Bead (Original Mix) - button ""Clear"" - button - cell ""00:29:02"": @@ -466,11 +466,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""7"" - cell ""Sebastien Leger Clear"": - - textbox: Sebastien Leger + - combobox: Sebastien Leger - button ""Clear"" - button - cell ""La Danse du Scorpion Clear"": - - textbox: La Danse du Scorpion + - combobox: La Danse du Scorpion - button ""Clear"" - button - cell ""00:34:27"": @@ -487,11 +487,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""8"" - cell ""Paul Thomas & Solid Stone Clear"": - - textbox: Paul Thomas & Solid Stone + - combobox: Paul Thomas & Solid Stone - button ""Clear"" - button - cell ""La Bombo (Solid Stone Remix) Clear"": - - textbox: La Bombo (Solid Stone Remix) + - combobox: La Bombo (Solid Stone Remix) - button ""Clear"" - button - cell ""00:40:59"": @@ -508,11 +508,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""9"" - cell ""GusGus Clear"": - - textbox: GusGus + - combobox: GusGus - button ""Clear"" - button - cell ""Crossfade (Maceo Plex Mix) Clear"": - - textbox: Crossfade (Maceo Plex Mix) + - combobox: Crossfade (Maceo Plex Mix) - button ""Clear"" - button - cell ""00:46:19"": @@ -529,11 +529,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""10"" - cell ""Klangkarussell Clear"": - - textbox: Klangkarussell + - combobox: Klangkarussell - button ""Clear"" - button - cell ""Time (Original Mix) Clear"": - - textbox: Time (Original Mix) + - combobox: Time (Original Mix) - button ""Clear"" - button - cell ""00:52:20"": @@ -550,11 +550,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""11"" - cell ""Anysense & Un:said Clear"": - - textbox: Anysense & Un:said + - combobox: Anysense & Un:said - button ""Clear"" - button - cell ""Missing Path (Original Mix) Clear"": - - textbox: Missing Path (Original Mix) + - combobox: Missing Path (Original Mix) - button ""Clear"" - button - cell ""00:56:19"": @@ -571,11 +571,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""12"" - cell ""Space Food Clear"": - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Bombay Clear"": - - textbox: Bombay + - combobox: Bombay - button ""Clear"" - button - cell ""01:01:41"": @@ -592,11 +592,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""13"" - cell ""SHDW & Obscure Shape Clear"": - - textbox: SHDW & Obscure Shape + - combobox: SHDW & Obscure Shape - button ""Clear"" - button - cell ""Wächter der Nacht (Original Mix) Clear"": - - textbox: Wächter der Nacht (Original Mix) + - combobox: Wächter der Nacht (Original Mix) - button ""Clear"" - button - cell ""01:06:33"": @@ -613,11 +613,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""14"" - cell ""HOSH Clear"": - - textbox: HOSH + - combobox: HOSH - button ""Clear"" - button - cell ""Karma Clear"": - - textbox: Karma + - combobox: Karma - button ""Clear"" - button - cell ""01:11:04"": @@ -634,11 +634,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""15"" - cell ""Alexey Union Clear"": - - textbox: Alexey Union + - combobox: Alexey Union - button ""Clear"" - button - cell ""Olympia (Original Mix) Clear"": - - textbox: Olympia (Original Mix) + - combobox: Olympia (Original Mix) - button ""Clear"" - button - cell ""01:15:28"": @@ -655,11 +655,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""16"" - cell ""Paul Taylor Clear"": - - textbox: Paul Taylor + - combobox: Paul Taylor - button ""Clear"" - button - cell ""Afterglow Clear"": - - textbox: Afterglow + - combobox: Afterglow - button ""Clear"" - button - cell ""01:21:08"": @@ -676,11 +676,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""17"" - cell ""Philter Clear"": - - textbox: Philter + - combobox: Philter - button ""Clear"" - button - cell ""Stranger Clear"": - - textbox: Stranger + - combobox: Stranger - button ""Clear"" - button - cell ""01:25:38"": @@ -697,11 +697,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""18"" - cell ""Skizologic Clear"": - - textbox: Skizologic + - combobox: Skizologic - button ""Clear"" - button - cell ""Hypersphere (Original Mix) Clear"": - - textbox: Hypersphere (Original Mix) + - combobox: Hypersphere (Original Mix) - button ""Clear"" - button - cell ""01:31:52"": @@ -718,11 +718,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""19"" - cell ""Thomas Schumacher, Caitlin Clear"": - - textbox: Thomas Schumacher, Caitlin + - combobox: Thomas Schumacher, Caitlin - button ""Clear"" - button - cell ""All of You (Remix) Clear"": - - textbox: All of You (Remix) + - combobox: All of You (Remix) - button ""Clear"" - button - cell ""01:36:40"": @@ -739,11 +739,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""20"" - cell ""A. Skomoroh Clear"": - - textbox: A. Skomoroh + - combobox: A. Skomoroh - button ""Clear"" - button - cell ""White Horse Conquest (Original Mix) Clear"": - - textbox: White Horse Conquest (Original Mix) + - combobox: White Horse Conquest (Original Mix) - button ""Clear"" - button - cell ""01:42:16"": @@ -760,11 +760,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""21"" - cell ""Patrik Berg Clear"": - - textbox: Patrik Berg + - combobox: Patrik Berg - button ""Clear"" - button - cell ""Bright (Original Mix) Clear"": - - textbox: Bright (Original Mix) + - combobox: Bright (Original Mix) - button ""Clear"" - button - cell ""01:47:04"": @@ -781,11 +781,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""22"" - cell ""Hidden Empire Clear"": - - textbox: Hidden Empire + - combobox: Hidden Empire - button ""Clear"" - button - cell ""Bengal Clear"": - - textbox: Bengal + - combobox: Bengal - button ""Clear"" - button - cell ""01:52:37"": @@ -802,11 +802,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""23"" - cell ""Mario Ochoa Clear"": - - textbox: Mario Ochoa + - combobox: Mario Ochoa - button ""Clear"" - button - cell ""Levitate Clear"": - - textbox: Levitate + - combobox: Levitate - button ""Clear"" - button - cell ""01:58:05"": @@ -823,11 +823,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""24"" - cell ""Raul Facio Clear"": - - textbox: Raul Facio + - combobox: Raul Facio - button ""Clear"" - button - cell ""Eyes Wide Shut (Original Mix) Clear"": - - textbox: Eyes Wide Shut (Original Mix) + - combobox: Eyes Wide Shut (Original Mix) - button ""Clear"" - button - cell ""02:03:00"": @@ -844,11 +844,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""25"" - cell ""Soolver Clear"": - - textbox: Soolver + - combobox: Soolver - button ""Clear"" - button - cell ""Regular (Original Mix) Clear"": - - textbox: Regular (Original Mix) + - combobox: Regular (Original Mix) - button ""Clear"" - button - cell ""02:08:21"": @@ -865,11 +865,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""26"" - cell ""Weska Clear"": - - textbox: Weska + - combobox: Weska - button ""Clear"" - button - cell ""EQ64 (Original Mix) Clear"": - - textbox: EQ64 (Original Mix) + - combobox: EQ64 (Original Mix) - button ""Clear"" - button - cell ""02:14:31"": @@ -886,11 +886,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""27"" - cell ""Tempo Giusto Clear"": - - textbox: Tempo Giusto + - combobox: Tempo Giusto - button ""Clear"" - button - cell ""The Fall (Extended Mix) Clear"": - - textbox: The Fall (Extended Mix) + - combobox: The Fall (Extended Mix) - button ""Clear"" - button - cell ""02:18:35"": @@ -907,11 +907,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""28"" - cell ""Vlind & Asteroid & Gary Leroy Clear"": - - textbox: Vlind & Asteroid & Gary Leroy + - combobox: Vlind & Asteroid & Gary Leroy - button ""Clear"" - button - cell ""Trinity (Extended Mix) Clear"": - - textbox: Trinity (Extended Mix) + - combobox: Trinity (Extended Mix) - button ""Clear"" - button - cell ""02:24:12"": @@ -928,11 +928,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""29"" - cell ""Astral Legacy Clear"": - - textbox: Astral Legacy + - combobox: Astral Legacy - button ""Clear"" - button - cell ""Vaveyla (Original Mix) Clear"": - - textbox: Vaveyla (Original Mix) + - combobox: Vaveyla (Original Mix) - button ""Clear"" - button - cell ""02:29:38"": @@ -949,11 +949,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""30"" - cell ""Gerrox Clear"": - - textbox: Gerrox + - combobox: Gerrox - button ""Clear"" - button - cell ""Chakra (Original Mix) Clear"": - - textbox: Chakra (Original Mix) + - combobox: Chakra (Original Mix) - button ""Clear"" - button - cell ""02:32:52"": @@ -970,11 +970,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""31"" - cell ""Charlotte De Witte Clear"": - - textbox: Charlotte De Witte + - combobox: Charlotte De Witte - button ""Clear"" - button - cell ""Pattern Clear"": - - textbox: Pattern + - combobox: Pattern - button ""Clear"" - button - cell ""02:37:00"": @@ -991,11 +991,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""32"" - cell ""Space Food Clear"": - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Amabey Clear"": - - textbox: Amabey + - combobox: Amabey - button ""Clear"" - button - cell ""02:41:55"": @@ -1012,11 +1012,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""33"" - cell ""ARTBAT Clear"": - - textbox: ARTBAT + - combobox: ARTBAT - button ""Clear"" - button - cell ""Papilion (Original Mix) Clear"": - - textbox: Papilion (Original Mix) + - combobox: Papilion (Original Mix) - button ""Clear"" - button - cell ""02:46:55"": @@ -1033,11 +1033,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""34"" - cell ""PETER PAHN Clear"": - - textbox: PETER PAHN + - combobox: PETER PAHN - button ""Clear"" - button - cell ""Enjoy Infinity (Original Mix) Clear"": - - textbox: Enjoy Infinity (Original Mix) + - combobox: Enjoy Infinity (Original Mix) - button ""Clear"" - button - cell ""02:51:13"": @@ -1054,11 +1054,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""35"" - cell ""Solitek Clear"": - - textbox: Solitek + - combobox: Solitek - button ""Clear"" - button - cell ""Instinct (Original Mix) Clear"": - - textbox: Instinct (Original Mix) + - combobox: Instinct (Original Mix) - button ""Clear"" - button - cell ""02:56:08"": @@ -1075,11 +1075,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""36"" - cell ""Veerus Clear"": - - textbox: Veerus + - combobox: Veerus - button ""Clear"" - button - cell ""Heavy Clear"": - - textbox: Heavy + - combobox: Heavy - button ""Clear"" - button - cell ""03:00:57"": @@ -1096,11 +1096,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""37"" - cell ""Secret Cinema & Reinier Zonneveld Clear"": - - textbox: Secret Cinema & Reinier Zonneveld + - combobox: Secret Cinema & Reinier Zonneveld - button ""Clear"" - button - cell ""Pain Thing (Original Mix) Clear"": - - textbox: Pain Thing (Original Mix) + - combobox: Pain Thing (Original Mix) - button ""Clear"" - button - cell ""03:05:19"": @@ -1117,11 +1117,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""38"" - cell ""Amelie Lens Clear"": - - textbox: Amelie Lens + - combobox: Amelie Lens - button ""Clear"" - button - cell ""Hypnotized Clear"": - - textbox: Hypnotized + - combobox: Hypnotized - button ""Clear"" - button - cell ""03:09:38"": @@ -1138,11 +1138,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""39"" - cell ""Nikolay Kirov Clear"": - - textbox: Nikolay Kirov + - combobox: Nikolay Kirov - button ""Clear"" - button - cell ""Chasing the Sun (Original Mix) Clear"": - - textbox: Chasing the Sun (Original Mix) + - combobox: Chasing the Sun (Original Mix) - button ""Clear"" - button - cell ""03:13:13"": @@ -1188,10 +1188,10 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell: - - textbox + - combobox - button - cell: - - textbox + - combobox - button - cell ""00:00:00"": - textbox: 00:00:00 @@ -1206,10 +1206,10 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""2"" - cell: - - textbox + - combobox - button - cell: - - textbox + - combobox - button - cell: - textbox @@ -1243,10 +1243,10 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - text: Select row - cell ""1"" - cell: - - textbox + - combobox - button - cell: - - textbox + - combobox - button - cell ""00:00:00"": - textbox: 00:00:00 diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/TracingTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/TracingTest.cs index fff99f79..78705658 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/TracingTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/TracingTest.cs @@ -49,11 +49,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title"": - text: Title - - textbox + - combobox - button - cell ""Begin 00:00:00"": - text: Begin @@ -78,12 +78,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Test Artist 1 Clear"": - text: Artist - - textbox: Test Artist 1 + - combobox: Test Artist 1 - button ""Clear"" - button - cell ""Title Test Title 1 Clear"": - text: Title - - textbox: Test Title 1 + - combobox: Test Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -107,12 +107,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Mozart Clear"": - text: Artist - - textbox: Mozart + - combobox: Mozart - button ""Clear"" - button - cell ""Title Eine kleine Nachtmusik Clear"": - text: Title - - textbox: Eine kleine Nachtmusik + - combobox: Eine kleine Nachtmusik - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -136,12 +136,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Mozart Clear"": - text: Artist - - textbox: Mozart + - combobox: Mozart - button ""Clear"" - button - cell ""Title Test Title 1 Clear"": - text: Title - - textbox: Test Title 1 + - combobox: Test Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -176,12 +176,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Test Track Artist 1 Clear"": - text: Artist - - textbox: Test Track Artist 1 + - combobox: Test Track Artist 1 - button ""Clear"" - button - cell ""Title Test Track Title 1 Clear"": - text: Title - - textbox: Test Track Title 1 + - combobox: Test Track Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -205,11 +205,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title"": - text: Title - - textbox + - combobox - button - cell ""Begin 00:00:00"": - text: Begin @@ -232,12 +232,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Test Track Artist 1 Clear"": - text: Artist - - textbox: Test Track Artist 1 + - combobox: Test Track Artist 1 - button ""Clear"" - button - cell ""Title Test Track Title 1 Clear"": - text: Title - - textbox: Test Track Title 1 + - combobox: Test Track Title 1 - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -285,12 +285,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist Adriatique Clear"": - text: Artist - - textbox: Adriatique + - combobox: Adriatique - button ""Clear"" - button - cell ""Title X. Clear"": - text: Title - - textbox: X. + - combobox: X. - button ""Clear"" - button - cell ""Begin 00:00:00"": @@ -310,12 +310,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist Third Harmony Clear"": - text: Artist - - textbox: Third Harmony + - combobox: Third Harmony - button ""Clear"" - button - cell ""Title Fears And Dreams (Original Mix) Clear"": - text: Title - - textbox: Fears And Dreams (Original Mix) + - combobox: Fears And Dreams (Original Mix) - button ""Clear"" - button - cell ""Begin 00:05:24.2500000"": @@ -337,12 +337,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 3"" - cell ""Artist Dele Sosimi Afrobeat Orchestra Clear"": - text: Artist - - textbox: Dele Sosimi Afrobeat Orchestra + - combobox: Dele Sosimi Afrobeat Orchestra - button ""Clear"" - button - cell ""Title Too Much Information (Laolu Remix; Edit) Clear"": - text: Title - - textbox: Too Much Information (Laolu Remix; Edit) + - combobox: Too Much Information (Laolu Remix; Edit) - button ""Clear"" - button - cell ""Begin 00:10:39"": @@ -364,12 +364,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 4"" - cell ""Artist Edem, Govan Clear"": - text: Artist - - textbox: Edem, Govan + - combobox: Edem, Govan - button ""Clear"" - button - cell ""Title Ankh (Onetwo MX Remix) Clear"": - text: Title - - textbox: Ankh (Onetwo MX Remix) + - combobox: Ankh (Onetwo MX Remix) - button ""Clear"" - button - cell ""Begin 00:17:06"": @@ -391,12 +391,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 5"" - cell ""Artist Jody Wisternoff Clear"": - text: Artist - - textbox: Jody Wisternoff + - combobox: Jody Wisternoff - button ""Clear"" - button - cell ""Title For All Time (feat. Hendrik Burkhard) (Extended Mix) Clear"": - text: Title - - textbox: For All Time (feat. Hendrik Burkhard) (Extended Mix) + - combobox: For All Time (feat. Hendrik Burkhard) (Extended Mix) - button ""Clear"" - button - cell ""Begin 00:23:21"": @@ -418,12 +418,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 6"" - cell ""Artist Einmusik Clear"": - text: Artist - - textbox: Einmusik + - combobox: Einmusik - button ""Clear"" - button - cell ""Title Bead (Original Mix) Clear"": - text: Title - - textbox: Bead (Original Mix) + - combobox: Bead (Original Mix) - button ""Clear"" - button - cell ""Begin 00:29:02"": @@ -445,12 +445,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 7"" - cell ""Artist Sebastien Leger Clear"": - text: Artist - - textbox: Sebastien Leger + - combobox: Sebastien Leger - button ""Clear"" - button - cell ""Title La Danse du Scorpion Clear"": - text: Title - - textbox: La Danse du Scorpion + - combobox: La Danse du Scorpion - button ""Clear"" - button - cell ""Begin 00:34:27"": @@ -472,12 +472,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 8"" - cell ""Artist Paul Thomas & Solid Stone Clear"": - text: Artist - - textbox: Paul Thomas & Solid Stone + - combobox: Paul Thomas & Solid Stone - button ""Clear"" - button - cell ""Title La Bombo (Solid Stone Remix) Clear"": - text: Title - - textbox: La Bombo (Solid Stone Remix) + - combobox: La Bombo (Solid Stone Remix) - button ""Clear"" - button - cell ""Begin 00:40:59"": @@ -499,12 +499,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 9"" - cell ""Artist GusGus Clear"": - text: Artist - - textbox: GusGus + - combobox: GusGus - button ""Clear"" - button - cell ""Title Crossfade (Maceo Plex Mix) Clear"": - text: Title - - textbox: Crossfade (Maceo Plex Mix) + - combobox: Crossfade (Maceo Plex Mix) - button ""Clear"" - button - cell ""Begin 00:46:19"": @@ -526,12 +526,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 10"" - cell ""Artist Klangkarussell Clear"": - text: Artist - - textbox: Klangkarussell + - combobox: Klangkarussell - button ""Clear"" - button - cell ""Title Time (Original Mix) Clear"": - text: Title - - textbox: Time (Original Mix) + - combobox: Time (Original Mix) - button ""Clear"" - button - cell ""Begin 00:52:20"": @@ -553,12 +553,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 11"" - cell ""Artist Anysense & Un:said Clear"": - text: Artist - - textbox: Anysense & Un:said + - combobox: Anysense & Un:said - button ""Clear"" - button - cell ""Title Missing Path (Original Mix) Clear"": - text: Title - - textbox: Missing Path (Original Mix) + - combobox: Missing Path (Original Mix) - button ""Clear"" - button - cell ""Begin 00:56:19"": @@ -580,12 +580,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 12"" - cell ""Artist Space Food Clear"": - text: Artist - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Title Bombay Clear"": - text: Title - - textbox: Bombay + - combobox: Bombay - button ""Clear"" - button - cell ""Begin 01:01:41"": @@ -607,12 +607,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 13"" - cell ""Artist SHDW & Obscure Shape Clear"": - text: Artist - - textbox: SHDW & Obscure Shape + - combobox: SHDW & Obscure Shape - button ""Clear"" - button - cell ""Title Wächter der Nacht (Original Mix) Clear"": - text: Title - - textbox: Wächter der Nacht (Original Mix) + - combobox: Wächter der Nacht (Original Mix) - button ""Clear"" - button - cell ""Begin 01:06:33"": @@ -634,12 +634,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 14"" - cell ""Artist HOSH Clear"": - text: Artist - - textbox: HOSH + - combobox: HOSH - button ""Clear"" - button - cell ""Title Karma Clear"": - text: Title - - textbox: Karma + - combobox: Karma - button ""Clear"" - button - cell ""Begin 01:11:04"": @@ -661,12 +661,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 15"" - cell ""Artist Alexey Union Clear"": - text: Artist - - textbox: Alexey Union + - combobox: Alexey Union - button ""Clear"" - button - cell ""Title Olympia (Original Mix) Clear"": - text: Title - - textbox: Olympia (Original Mix) + - combobox: Olympia (Original Mix) - button ""Clear"" - button - cell ""Begin 01:15:28"": @@ -688,12 +688,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 16"" - cell ""Artist Paul Taylor Clear"": - text: Artist - - textbox: Paul Taylor + - combobox: Paul Taylor - button ""Clear"" - button - cell ""Title Afterglow Clear"": - text: Title - - textbox: Afterglow + - combobox: Afterglow - button ""Clear"" - button - cell ""Begin 01:21:08"": @@ -715,12 +715,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 17"" - cell ""Artist Philter Clear"": - text: Artist - - textbox: Philter + - combobox: Philter - button ""Clear"" - button - cell ""Title Stranger Clear"": - text: Title - - textbox: Stranger + - combobox: Stranger - button ""Clear"" - button - cell ""Begin 01:25:38"": @@ -742,12 +742,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 18"" - cell ""Artist Skizologic Clear"": - text: Artist - - textbox: Skizologic + - combobox: Skizologic - button ""Clear"" - button - cell ""Title Hypersphere (Original Mix) Clear"": - text: Title - - textbox: Hypersphere (Original Mix) + - combobox: Hypersphere (Original Mix) - button ""Clear"" - button - cell ""Begin 01:31:52"": @@ -769,12 +769,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 19"" - cell ""Artist Thomas Schumacher, Caitlin Clear"": - text: Artist - - textbox: Thomas Schumacher, Caitlin + - combobox: Thomas Schumacher, Caitlin - button ""Clear"" - button - cell ""Title All of You (Remix) Clear"": - text: Title - - textbox: All of You (Remix) + - combobox: All of You (Remix) - button ""Clear"" - button - cell ""Begin 01:36:40"": @@ -796,12 +796,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 20"" - cell ""Artist A. Skomoroh Clear"": - text: Artist - - textbox: A. Skomoroh + - combobox: A. Skomoroh - button ""Clear"" - button - cell ""Title White Horse Conquest (Original Mix) Clear"": - text: Title - - textbox: White Horse Conquest (Original Mix) + - combobox: White Horse Conquest (Original Mix) - button ""Clear"" - button - cell ""Begin 01:42:16"": @@ -823,12 +823,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 21"" - cell ""Artist Patrik Berg Clear"": - text: Artist - - textbox: Patrik Berg + - combobox: Patrik Berg - button ""Clear"" - button - cell ""Title Bright (Original Mix) Clear"": - text: Title - - textbox: Bright (Original Mix) + - combobox: Bright (Original Mix) - button ""Clear"" - button - cell ""Begin 01:47:04"": @@ -850,12 +850,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 22"" - cell ""Artist Hidden Empire Clear"": - text: Artist - - textbox: Hidden Empire + - combobox: Hidden Empire - button ""Clear"" - button - cell ""Title Bengal Clear"": - text: Title - - textbox: Bengal + - combobox: Bengal - button ""Clear"" - button - cell ""Begin 01:52:37"": @@ -877,12 +877,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 23"" - cell ""Artist Mario Ochoa Clear"": - text: Artist - - textbox: Mario Ochoa + - combobox: Mario Ochoa - button ""Clear"" - button - cell ""Title Levitate Clear"": - text: Title - - textbox: Levitate + - combobox: Levitate - button ""Clear"" - button - cell ""Begin 01:58:05"": @@ -904,12 +904,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 24"" - cell ""Artist Raul Facio Clear"": - text: Artist - - textbox: Raul Facio + - combobox: Raul Facio - button ""Clear"" - button - cell ""Title Eyes Wide Shut (Original Mix) Clear"": - text: Title - - textbox: Eyes Wide Shut (Original Mix) + - combobox: Eyes Wide Shut (Original Mix) - button ""Clear"" - button - cell ""Begin 02:03:00"": @@ -931,12 +931,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 25"" - cell ""Artist Soolver Clear"": - text: Artist - - textbox: Soolver + - combobox: Soolver - button ""Clear"" - button - cell ""Title Regular (Original Mix) Clear"": - text: Title - - textbox: Regular (Original Mix) + - combobox: Regular (Original Mix) - button ""Clear"" - button - cell ""Begin 02:08:21"": @@ -958,12 +958,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 26"" - cell ""Artist Weska Clear"": - text: Artist - - textbox: Weska + - combobox: Weska - button ""Clear"" - button - cell ""Title EQ64 (Original Mix) Clear"": - text: Title - - textbox: EQ64 (Original Mix) + - combobox: EQ64 (Original Mix) - button ""Clear"" - button - cell ""Begin 02:14:31"": @@ -985,12 +985,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 27"" - cell ""Artist Tempo Giusto Clear"": - text: Artist - - textbox: Tempo Giusto + - combobox: Tempo Giusto - button ""Clear"" - button - cell ""Title The Fall (Extended Mix) Clear"": - text: Title - - textbox: The Fall (Extended Mix) + - combobox: The Fall (Extended Mix) - button ""Clear"" - button - cell ""Begin 02:18:35"": @@ -1012,12 +1012,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 28"" - cell ""Artist Vlind & Asteroid & Gary Leroy Clear"": - text: Artist - - textbox: Vlind & Asteroid & Gary Leroy + - combobox: Vlind & Asteroid & Gary Leroy - button ""Clear"" - button - cell ""Title Trinity (Extended Mix) Clear"": - text: Title - - textbox: Trinity (Extended Mix) + - combobox: Trinity (Extended Mix) - button ""Clear"" - button - cell ""Begin 02:24:12"": @@ -1039,12 +1039,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 29"" - cell ""Artist Astral Legacy Clear"": - text: Artist - - textbox: Astral Legacy + - combobox: Astral Legacy - button ""Clear"" - button - cell ""Title Vaveyla (Original Mix) Clear"": - text: Title - - textbox: Vaveyla (Original Mix) + - combobox: Vaveyla (Original Mix) - button ""Clear"" - button - cell ""Begin 02:29:38"": @@ -1066,12 +1066,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 30"" - cell ""Artist Gerrox Clear"": - text: Artist - - textbox: Gerrox + - combobox: Gerrox - button ""Clear"" - button - cell ""Title Chakra (Original Mix) Clear"": - text: Title - - textbox: Chakra (Original Mix) + - combobox: Chakra (Original Mix) - button ""Clear"" - button - cell ""Begin 02:32:52"": @@ -1093,12 +1093,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 31"" - cell ""Artist Charlotte De Witte Clear"": - text: Artist - - textbox: Charlotte De Witte + - combobox: Charlotte De Witte - button ""Clear"" - button - cell ""Title Pattern Clear"": - text: Title - - textbox: Pattern + - combobox: Pattern - button ""Clear"" - button - cell ""Begin 02:37:00"": @@ -1120,12 +1120,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 32"" - cell ""Artist Space Food Clear"": - text: Artist - - textbox: Space Food + - combobox: Space Food - button ""Clear"" - button - cell ""Title Amabey Clear"": - text: Title - - textbox: Amabey + - combobox: Amabey - button ""Clear"" - button - cell ""Begin 02:41:55"": @@ -1147,12 +1147,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 33"" - cell ""Artist ARTBAT Clear"": - text: Artist - - textbox: ARTBAT + - combobox: ARTBAT - button ""Clear"" - button - cell ""Title Papilion (Original Mix) Clear"": - text: Title - - textbox: Papilion (Original Mix) + - combobox: Papilion (Original Mix) - button ""Clear"" - button - cell ""Begin 02:46:55"": @@ -1174,12 +1174,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 34"" - cell ""Artist PETER PAHN Clear"": - text: Artist - - textbox: PETER PAHN + - combobox: PETER PAHN - button ""Clear"" - button - cell ""Title Enjoy Infinity (Original Mix) Clear"": - text: Title - - textbox: Enjoy Infinity (Original Mix) + - combobox: Enjoy Infinity (Original Mix) - button ""Clear"" - button - cell ""Begin 02:51:13"": @@ -1201,12 +1201,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 35"" - cell ""Artist Solitek Clear"": - text: Artist - - textbox: Solitek + - combobox: Solitek - button ""Clear"" - button - cell ""Title Instinct (Original Mix) Clear"": - text: Title - - textbox: Instinct (Original Mix) + - combobox: Instinct (Original Mix) - button ""Clear"" - button - cell ""Begin 02:56:08"": @@ -1228,12 +1228,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 36"" - cell ""Artist Veerus Clear"": - text: Artist - - textbox: Veerus + - combobox: Veerus - button ""Clear"" - button - cell ""Title Heavy Clear"": - text: Title - - textbox: Heavy + - combobox: Heavy - button ""Clear"" - button - cell ""Begin 03:00:57"": @@ -1255,12 +1255,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 37"" - cell ""Artist Secret Cinema & Reinier Zonneveld Clear"": - text: Artist - - textbox: Secret Cinema & Reinier Zonneveld + - combobox: Secret Cinema & Reinier Zonneveld - button ""Clear"" - button - cell ""Title Pain Thing (Original Mix) Clear"": - text: Title - - textbox: Pain Thing (Original Mix) + - combobox: Pain Thing (Original Mix) - button ""Clear"" - button - cell ""Begin 03:05:19"": @@ -1282,12 +1282,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 38"" - cell ""Artist Amelie Lens Clear"": - text: Artist - - textbox: Amelie Lens + - combobox: Amelie Lens - button ""Clear"" - button - cell ""Title Hypnotized Clear"": - text: Title - - textbox: Hypnotized + - combobox: Hypnotized - button ""Clear"" - button - cell ""Begin 03:09:38"": @@ -1309,12 +1309,12 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 39"" - cell ""Artist Nikolay Kirov Clear"": - text: Artist - - textbox: Nikolay Kirov + - combobox: Nikolay Kirov - button ""Clear"" - button - cell ""Title Chasing the Sun (Original Mix) Clear"": - text: Title - - textbox: Chasing the Sun (Original Mix) + - combobox: Chasing the Sun (Original Mix) - button ""Clear"" - button - cell ""Begin 03:13:13"": @@ -1353,11 +1353,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title"": - text: Title - - textbox + - combobox - button - cell ""Begin 00:00:00"": - text: Begin @@ -1376,11 +1376,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 2"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title"": - text: Title - - textbox + - combobox - button - cell ""Begin"": - text: Begin @@ -1407,11 +1407,11 @@ await Expect(TestPage.GetByRole(AriaRole.Table)).ToMatchAriaSnapshotAsync(@"- ta - cell ""# 1"" - cell ""Artist"": - text: Artist - - textbox + - combobox - button - cell ""Title"": - text: Title - - textbox + - combobox - button - cell ""Begin 00:00:00"": - text: Begin From 7aa5a6c25f2602c9e50119765d11c3650d991883 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 13:14:53 +0200 Subject: [PATCH 15/17] fix export tests --- .../Tests/Desktop/ExportTest.cs | 51 ++++++++++++++----- .../Tests/Smartphone/ExportTest.cs | 51 ++++++++++++++----- 2 files changed, 74 insertions(+), 28 deletions(-) diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs index f5210ea3..bbb02b5a 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Desktop/ExportTest.cs @@ -95,21 +95,30 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.AddTrackAsync(0); await detailView.AddTrackAsync(0); await detailView.AddTrackAsync(0); - await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 30), 1); - await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 30), new TimeSpan(0, 1, 0), 2); - await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 30), 3); - await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 1, 30), new TimeSpan(0, 2, 0), 4); - await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 30), 5); - await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 2, 30), new TimeSpan(0, 3, 0), 6); - await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 3, 0), new TimeSpan(0, 3, 30), 7); - await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 3, 30), new TimeSpan(0, 4, 0), 8); - await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 4, 0), new TimeSpan(0, 4, 30), 9); - await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 4, 30), new TimeSpan(0, 5, 0), 10); - await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); - await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 10), 1); + await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 10), new TimeSpan(0, 0, 20), 2); + await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 0, 20), new TimeSpan(0, 0, 30), 3); + await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 0, 30), new TimeSpan(0, 0, 40), 4); + await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 0, 40), new TimeSpan(0, 0, 50), 5); + await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 0, 50), new TimeSpan(0, 1, 0), 6); + await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 10), 7); + await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 1, 10), new TimeSpan(0, 1, 20), 8); + await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 1, 20), new TimeSpan(0, 1, 30), 9); + await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 1, 30), new TimeSpan(0, 1, 40), 10); + await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 1, 40), new TimeSpan(0, 1, 50), 11); + await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 1, 50), new TimeSpan(0, 2, 0), 12); + await detailView.EditTrackAsync("Track Artist 13", "Track Title 13", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 10), 13); + await detailView.EditTrackAsync("Track Artist 14", "Track Title 14", new TimeSpan(0, 2, 10), new TimeSpan(0, 2, 20), 14); + await detailView.EditTrackAsync("Track Artist 15", "Track Title 15", new TimeSpan(0, 2, 20), new TimeSpan(0, 2, 30), 15); + await detailView.EditTrackAsync("Track Artist 16", "Track Title 16", new TimeSpan(0, 2, 30), null, 16); await bar.OpenExportDialogAsync("Textfile"); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Generate export" }).ClickAsync(); - //TODO: Assert scrollbars + await Expect(TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" })).ToBeVisibleAsync(); + await Expect(TestPage.GetByRole(AriaRole.Button, new() { Name = "Copy to clipboard" })).ToBeVisibleAsync(); var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); var download = await downloadTask; @@ -117,10 +126,24 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() using var reader = new StreamReader(stream); var content = await reader.ReadToEndAsync(TestContext.CancellationToken); content = content.Replace("\n", Environment.NewLine); - //TODO Assert.AreEqual(@"Cuesheet Artist 1 - Cuesheet Title 1 Track Artist 1 - Track Title 1 00:00:00 +Track Artist 2 - Track Title 2 00:00:10 +Track Artist 3 - Track Title 3 00:00:20 +Track Artist 4 - Track Title 4 00:00:30 +Track Artist 5 - Track Title 5 00:00:40 +Track Artist 6 - Track Title 6 00:00:50 +Track Artist 7 - Track Title 7 00:01:00 +Track Artist 8 - Track Title 8 00:01:10 +Track Artist 9 - Track Title 9 00:01:20 +Track Artist 10 - Track Title 10 00:01:30 +Track Artist 11 - Track Title 11 00:01:40 +Track Artist 12 - Track Title 12 00:01:50 +Track Artist 13 - Track Title 13 00:02:00 +Track Artist 14 - Track Title 14 00:02:10 +Track Artist 15 - Track Title 15 00:02:20 +Track Artist 16 - Track Title 16 00:02:30 ", content); } diff --git a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs index 3fe08571..eb85f017 100644 --- a/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs +++ b/AudioCuesheetEditor.End2EndTests/Tests/Smartphone/ExportTest.cs @@ -97,21 +97,30 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() await detailView.AddTrackAsync(0); await detailView.AddTrackAsync(0); await detailView.AddTrackAsync(0); - await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 30), 1); - await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 30), new TimeSpan(0, 1, 0), 2); - await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 30), 3); - await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 1, 30), new TimeSpan(0, 2, 0), 4); - await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 30), 5); - await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 2, 30), new TimeSpan(0, 3, 0), 6); - await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 3, 0), new TimeSpan(0, 3, 30), 7); - await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 3, 30), new TimeSpan(0, 4, 0), 8); - await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 4, 0), new TimeSpan(0, 4, 30), 9); - await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 4, 30), new TimeSpan(0, 5, 0), 10); - await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 5, 0), new TimeSpan(0, 5, 30), 11); - await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 5, 30), null, 12); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.AddTrackAsync(0); + await detailView.EditTrackAsync("Track Artist 1", "Track Title 1", TimeSpan.Zero, new TimeSpan(0, 0, 10), 1); + await detailView.EditTrackAsync("Track Artist 2", "Track Title 2", new TimeSpan(0, 0, 10), new TimeSpan(0, 0, 20), 2); + await detailView.EditTrackAsync("Track Artist 3", "Track Title 3", new TimeSpan(0, 0, 20), new TimeSpan(0, 0, 30), 3); + await detailView.EditTrackAsync("Track Artist 4", "Track Title 4", new TimeSpan(0, 0, 30), new TimeSpan(0, 0, 40), 4); + await detailView.EditTrackAsync("Track Artist 5", "Track Title 5", new TimeSpan(0, 0, 40), new TimeSpan(0, 0, 50), 5); + await detailView.EditTrackAsync("Track Artist 6", "Track Title 6", new TimeSpan(0, 0, 50), new TimeSpan(0, 1, 0), 6); + await detailView.EditTrackAsync("Track Artist 7", "Track Title 7", new TimeSpan(0, 1, 0), new TimeSpan(0, 1, 10), 7); + await detailView.EditTrackAsync("Track Artist 8", "Track Title 8", new TimeSpan(0, 1, 10), new TimeSpan(0, 1, 20), 8); + await detailView.EditTrackAsync("Track Artist 9", "Track Title 9", new TimeSpan(0, 1, 20), new TimeSpan(0, 1, 30), 9); + await detailView.EditTrackAsync("Track Artist 10", "Track Title 10", new TimeSpan(0, 1, 30), new TimeSpan(0, 1, 40), 10); + await detailView.EditTrackAsync("Track Artist 11", "Track Title 11", new TimeSpan(0, 1, 40), new TimeSpan(0, 1, 50), 11); + await detailView.EditTrackAsync("Track Artist 12", "Track Title 12", new TimeSpan(0, 1, 50), new TimeSpan(0, 2, 0), 12); + await detailView.EditTrackAsync("Track Artist 13", "Track Title 13", new TimeSpan(0, 2, 0), new TimeSpan(0, 2, 10), 13); + await detailView.EditTrackAsync("Track Artist 14", "Track Title 14", new TimeSpan(0, 2, 10), new TimeSpan(0, 2, 20), 14); + await detailView.EditTrackAsync("Track Artist 15", "Track Title 15", new TimeSpan(0, 2, 20), new TimeSpan(0, 2, 30), 15); + await detailView.EditTrackAsync("Track Artist 16", "Track Title 16", new TimeSpan(0, 2, 30), null, 16); await bar.OpenExportDialogAsync("Textfile"); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Generate export" }).ClickAsync(); - //TODO: Assert scrollbars + await Expect(TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" })).ToBeVisibleAsync(); + await Expect(TestPage.GetByRole(AriaRole.Button, new() { Name = "Copy to clipboard" })).ToBeVisibleAsync(); var downloadTask = TestPage.WaitForDownloadAsync(); await TestPage.GetByRole(AriaRole.Button, new() { Name = "Download" }).ClickAsync(); var download = await downloadTask; @@ -119,10 +128,24 @@ public async Task DownloadText_GeneratesTextFile_WhenCuesheetIsValidAsync() using var reader = new StreamReader(stream); var content = await reader.ReadToEndAsync(TestContext.CancellationToken); content = content.Replace("\n", Environment.NewLine); - //TODO Assert.AreEqual(@"Cuesheet Artist 1 - Cuesheet Title 1 Track Artist 1 - Track Title 1 00:00:00 +Track Artist 2 - Track Title 2 00:00:10 +Track Artist 3 - Track Title 3 00:00:20 +Track Artist 4 - Track Title 4 00:00:30 +Track Artist 5 - Track Title 5 00:00:40 +Track Artist 6 - Track Title 6 00:00:50 +Track Artist 7 - Track Title 7 00:01:00 +Track Artist 8 - Track Title 8 00:01:10 +Track Artist 9 - Track Title 9 00:01:20 +Track Artist 10 - Track Title 10 00:01:30 +Track Artist 11 - Track Title 11 00:01:40 +Track Artist 12 - Track Title 12 00:01:50 +Track Artist 13 - Track Title 13 00:02:00 +Track Artist 14 - Track Title 14 00:02:10 +Track Artist 15 - Track Title 15 00:02:20 +Track Artist 16 - Track Title 16 00:02:30 ", content); } From 3fbab1e7dce853ab5dad02a59d76e2c06c733fc2 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 13:56:19 +0200 Subject: [PATCH 16/17] Update AudioCuesheetEditor.csproj --- AudioCuesheetEditor/AudioCuesheetEditor.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AudioCuesheetEditor/AudioCuesheetEditor.csproj b/AudioCuesheetEditor/AudioCuesheetEditor.csproj index 9fb92466..90e77c73 100644 --- a/AudioCuesheetEditor/AudioCuesheetEditor.csproj +++ b/AudioCuesheetEditor/AudioCuesheetEditor.csproj @@ -36,7 +36,7 @@ - +
From 0dbad52e045746585296820635169e27786d9186 Mon Sep 17 00:00:00 2001 From: NeoCodeMatrix86 <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Tue, 15 Sep 2026 14:04:42 +0200 Subject: [PATCH 17/17] Update MSTestSettings.cs --- AudioCuesheetEditor.Tests/MSTestSettings.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AudioCuesheetEditor.Tests/MSTestSettings.cs b/AudioCuesheetEditor.Tests/MSTestSettings.cs index e466aa12..8a30f591 100644 --- a/AudioCuesheetEditor.Tests/MSTestSettings.cs +++ b/AudioCuesheetEditor.Tests/MSTestSettings.cs @@ -1,3 +1,3 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; -[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)] +[assembly: Parallelize()]