feat: align legacy operator and playout behavior
This commit is contained in:
@@ -41,14 +41,30 @@ public sealed class LegacyPlayoutNativeContractTests
|
||||
[Fact]
|
||||
public void OperatorCommandsUseTheNativeWorkflowAndCSharpPlaylist()
|
||||
{
|
||||
Assert.Contains("_controller.CreatePlayoutRequest()", Playout,
|
||||
Assert.Contains("_controller.CreatePlayoutRequest(", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("_compositionOptions!.Current.FadeDuration", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.PrepareAsync(", Playout, StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.PrepareAndTakeInAsync(", Playout,
|
||||
Assert.Contains("workflow.TakeSelectedAsync(", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("workflow.TakeInAsync(", Playout, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(
|
||||
"string.IsNullOrWhiteSpace(workflow.State.PreparedCutCode)",
|
||||
Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.TakeInAsync(", Playout, StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.NextAsync(", Playout, StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.TakeOutAsync(", Playout, StringComparison.Ordinal);
|
||||
Assert.Contains("_controller.ReflectSuccessfulPlayout(", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("workflow.State.CurrentEntryId", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacyOperatorPlayoutCommand.Prepare or", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains(
|
||||
"command != LegacyOperatorPlayoutCommand.TakeOut",
|
||||
Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacyWorkflowNextKind.PlaylistNext", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacySceneRefreshPolicy.TryGetInterval", Playout,
|
||||
@@ -68,6 +84,41 @@ public sealed class LegacyPlayoutNativeContractTests
|
||||
Assert.DoesNotContain("ReconnectAsync", Playout, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void OriginalDissolveComboAcceptsOnlyItsZeroBasedTwentyItemIndex()
|
||||
{
|
||||
Assert.Contains("fadeDuration is < 0 or > 19", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("fadeDuration is < 0 or > 60", Playout,
|
||||
StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void HomeAndEndStopAutomaticRefreshBeforeChangingTheCandidateRow()
|
||||
{
|
||||
Assert.Contains(
|
||||
"LegacySelectPlaylistBoundaryIntent boundary =>\n" +
|
||||
" SelectPlaylistBoundaryAndStopRefresh(boundary.Last)",
|
||||
Window.Replace("\r\n", "\n", StringComparison.Ordinal),
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains(
|
||||
"private LegacyOperatorSnapshot SelectPlaylistBoundaryAndStopRefresh(bool last)",
|
||||
Playout,
|
||||
StringComparison.Ordinal);
|
||||
var helperStart = Playout.IndexOf(
|
||||
"private LegacyOperatorSnapshot SelectPlaylistBoundaryAndStopRefresh(bool last)",
|
||||
StringComparison.Ordinal);
|
||||
var helperEnd = Playout.IndexOf(
|
||||
"private async Task<LegacyOperatorSnapshot> ToggleBackgroundAsync",
|
||||
helperStart,
|
||||
StringComparison.Ordinal);
|
||||
Assert.True(helperStart >= 0 && helperEnd > helperStart);
|
||||
var helper = Playout[helperStart..helperEnd];
|
||||
Assert.True(
|
||||
helper.IndexOf("StopRefreshLoop();", StringComparison.Ordinal) <
|
||||
helper.IndexOf("_controller.SelectPlaylistBoundary(last)", StringComparison.Ordinal));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void PreparedProgramAndUnknownWriteOutcomesBlockOperatorMutations()
|
||||
{
|
||||
@@ -86,6 +137,10 @@ public sealed class LegacyPlayoutNativeContractTests
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacyConfirmManualListIntent", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacyCutPointerDownIntent", Playout,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("LegacyClearCutSelectionIntent", Playout,
|
||||
StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
private static string FindRepositoryRoot()
|
||||
|
||||
Reference in New Issue
Block a user