26 lines
949 B
TypeScript
26 lines
949 B
TypeScript
import { test, expect, type Page } from '@playwright/test';
|
|
|
|
async function login(page: Page) {
|
|
await page.goto('/login/');
|
|
await page.fill('#lg-username', 'demo');
|
|
await page.fill('#lg-password', 'demo');
|
|
await page.click('button[type=submit]');
|
|
await expect(page.getByTestId('nav-menu')).toBeVisible();
|
|
}
|
|
|
|
test('the wind layer toggles on, loads a field, and toggles off', async ({ page }) => {
|
|
await login(page);
|
|
|
|
// Off by default: no particle canvas, no status line.
|
|
await expect(page.locator('canvas.wind-particles')).toHaveCount(0);
|
|
|
|
await page.getByTestId('tab-wind').click();
|
|
await page.getByTestId('wind-toggle').check();
|
|
await expect(page.getByTestId('wind-status')).toContainText(/загружено|loaded/i, {
|
|
timeout: 15000
|
|
});
|
|
await expect(page.locator('canvas.wind-particles')).toHaveCount(1);
|
|
|
|
await page.getByTestId('wind-toggle').uncheck();
|
|
await expect(page.locator('canvas.wind-particles')).toHaveCount(0);
|
|
});
|