Skip to content

Commit 56dd322

Browse files
committed
Cover centered reader text alignment (#30)
1 parent 47a06e1 commit 56dd322

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

tests/PrompterOne.Web.UITests.Reader/Teleprompter/TeleprompterPersistenceTests.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,41 @@ await Expect(page.GetByTestId(UiTestIds.Teleprompter.AutoLoopToggle))
9898
private static decimal RoundStoredReaderSetting(decimal value) =>
9999
Math.Round(value, StoredReaderSettingPrecisionDigits);
100100

101+
[Test]
102+
public Task Teleprompter_CenterAlignmentPersistsAcrossReload() =>
103+
RunPageAsync(async page =>
104+
{
105+
await ReaderRouteDriver.OpenTeleprompterAsync(page, BrowserTestConstants.Routes.TeleprompterDemo);
106+
await Expect(page.GetByTestId(UiTestIds.Teleprompter.Page))
107+
.ToBeVisibleAsync(new() { Timeout = BrowserTestConstants.Timing.ExtendedVisibleTimeoutMs });
108+
109+
await page.GetByTestId(UiTestIds.Teleprompter.AlignmentCenter).ClickAsync();
110+
await Expect(page.GetByTestId(UiTestIds.Teleprompter.ClusterWrap))
111+
.ToHaveAttributeAsync(
112+
BrowserTestConstants.TeleprompterFlow.ReaderTextAlignmentAttribute,
113+
BrowserTestConstants.TeleprompterFlow.AlignmentCenterValue);
114+
115+
var storedJson = await page.EvaluateAsync<string>(
116+
"(storageKey) => localStorage.getItem(storageKey) ?? ''",
117+
StoredReaderSettingsKey);
118+
var storedSettings = JsonSerializer.Deserialize<ReaderSettings>(storedJson);
119+
120+
await Assert.That(storedSettings).IsNotNull();
121+
await Assert.That(storedSettings.TextAlignment).IsEqualTo(ReaderTextAlignment.Center);
122+
123+
await BrowserRouteDriver.ReloadPageAsync(
124+
page,
125+
BrowserTestConstants.Routes.TeleprompterDemo,
126+
UiTestIds.Teleprompter.Page,
127+
$"{nameof(Teleprompter_CenterAlignmentPersistsAcrossReload)}-reload");
128+
await PlaybackRouteDriver.WaitForTeleprompterReadyAsync(page, BrowserTestConstants.Routes.TeleprompterDemo);
129+
130+
await Expect(page.GetByTestId(UiTestIds.Teleprompter.ClusterWrap))
131+
.ToHaveAttributeAsync(
132+
BrowserTestConstants.TeleprompterFlow.ReaderTextAlignmentAttribute,
133+
BrowserTestConstants.TeleprompterFlow.AlignmentCenterValue);
134+
});
135+
101136
[Test]
102137
public Task Teleprompter_BackwardBlockJump_ReversesOutgoingCardDirection() =>
103138
RunPageAsync(async page =>

0 commit comments

Comments
 (0)