mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-07 16:33:51 +00:00
e9a7cd0400
* add dayOffset to OntimeEvent * refactor: isNewLatest * calculate totalDays * refactor: getTimeFromPrevious * add gap as dataset in OntimeEvent * use in ui * format overlap is just a simple text formatting, big test is not needed * add new fields where needed * update apply delay * show nex day eaven if there is no gap * create test * use buildin day offset in timeline * remove todo * consistent naming * make a calculateDayOffset util for rundownCache * refactor: checkIsNextDay to use dayOffset * spelling Co-authored-by: Carlos Valente <34649812+cpvalente@users.noreply.github.com> * remove unneeded test * remove todo * update test db * use data-testid * spelling Co-authored-by: Carlos Valente <34649812+cpvalente@users.noreply.github.com> * update comments * remove null option --------- Co-authored-by: Carlos Valente <34649812+cpvalente@users.noreply.github.com>
39 lines
2.0 KiB
TypeScript
39 lines
2.0 KiB
TypeScript
import { expect, test } from '@playwright/test';
|
|
|
|
test('show warning when event crosses midnight', async ({ page }) => {
|
|
await page.goto('http://localhost:4001/editor');
|
|
|
|
await page.getByRole('button', { name: 'Clear rundown' }).click();
|
|
await page.getByRole('button', { name: 'Delete all' }).click();
|
|
|
|
await page.getByRole('button', { name: 'Create Event' }).click();
|
|
await page.getByRole('button', { name: 'Event' }).nth(4).click();
|
|
await page.getByRole('button', { name: 'Event', exact: true }).nth(1).click();
|
|
await page.getByTestId('entry-2').getByTestId('lock__end').getByRole('img').click();
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').click();
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').fill('23h');
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').press('Enter');
|
|
await page.getByTestId('entry-3').getByTestId('time-input-duration').click();
|
|
await page.getByTestId('entry-3').getByTestId('time-input-duration').fill('2h');
|
|
await page.getByTestId('entry-3').getByTestId('time-input-duration').press('Enter');
|
|
|
|
await expect(page.getByTestId('entry-3').getByTestId('event-warning')).toBeVisible();
|
|
});
|
|
|
|
test('show warning when event starts next day midnight', async ({ page }) => {
|
|
await page.goto('http://localhost:4001/editor');
|
|
|
|
await page.getByRole('button', { name: 'Clear rundown' }).click();
|
|
await page.getByRole('button', { name: 'Delete all' }).click();
|
|
|
|
await page.getByRole('button', { name: 'Create Event' }).click();
|
|
await page.getByRole('button', { name: 'Event' }).nth(4).click();
|
|
await page.getByTestId('entry-2').getByText('E').click();
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').click();
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').fill('0');
|
|
await page.getByTestId('entry-2').getByTestId('time-input-timeEnd').press('Enter');
|
|
await page.getByRole('button', { name: 'Event', exact: true }).nth(2).click();
|
|
|
|
await expect(page.getByText('(next day)')).toBeVisible();
|
|
});
|