mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-09 01:13:55 +00:00
797a0edf57
* feat: add external endpoint * add external to messagecontrol --------- Co-authored-by: Carlos Valente <carlosvalente@pm.me>
44 lines
2.0 KiB
TypeScript
44 lines
2.0 KiB
TypeScript
import { expect, test } from '@playwright/test';
|
|
|
|
test('message control sends messages to screens', async ({ context }) => {
|
|
const editorPage = await context.newPage();
|
|
const featurePage = await context.newPage();
|
|
|
|
await editorPage.goto('http://localhost:4001/messagecontrol');
|
|
|
|
// public screen message
|
|
await editorPage.getByPlaceholder('Shown in public and backstage screens').click();
|
|
await editorPage.getByPlaceholder('Shown in public and backstage screens').fill('testing public');
|
|
await editorPage.getByRole('button', { name: 'Toggle Public / Backstage screen message' }).click();
|
|
|
|
await featurePage.goto('http://localhost:4001/public');
|
|
await featurePage.waitForLoadState('load', { timeout: 5000 });
|
|
await featurePage.getByText('testing public').click({ timeout: 5000 });
|
|
|
|
// lower third message
|
|
await editorPage.getByPlaceholder('Shown in lower third').click();
|
|
await editorPage.getByPlaceholder('Shown in lower third').fill('testing lower');
|
|
await editorPage.getByRole('button', { name: /toggle lower third message/i }).click();
|
|
|
|
await featurePage.goto('http://localhost:4001/lower');
|
|
await featurePage.waitForLoadState('load', { timeout: 5000 });
|
|
await featurePage.getByText('testing lower').click({ timeout: 5000 });
|
|
|
|
// stage timer message
|
|
await editorPage.getByPlaceholder('Timer').click();
|
|
await editorPage.getByPlaceholder('Timer').fill('testing stage');
|
|
await editorPage.getByRole('button', { name: /toggle timer/i }).click({ timeout: 5000 });
|
|
|
|
await featurePage.goto('http://localhost:4001/timer');
|
|
await featurePage.waitForLoadState('load', { timeout: 5000 });
|
|
await featurePage.getByText('testing stage').click();
|
|
|
|
// on air state
|
|
await editorPage.getByTestId('toggle on air').click();
|
|
|
|
await featurePage.goto('http://localhost:4001/studio');
|
|
await featurePage.getByText('ON AIR').click();
|
|
const onAirActive = await featurePage.locator('data-testid=on-air-enabled');
|
|
await expect(onAirActive).toHaveText(/on air/i);
|
|
});
|