blob: 8b1d57251752b60de1b469d2d3b76d5dae9f9e0c [file] [log] [blame]
import { expect } from 'chai';
import { loadCachedTestBed, takeScreenshot, TestBed } from '../../../puppeteer-tests/util';
import { ThemeChooserSk } from '../../../infra-sk/modules/theme-chooser-sk/theme-chooser-sk';
describe('skip-tasks-sk', () => {
let testBed: TestBed;
before(async () => {
testBed = await loadCachedTestBed();
});
beforeEach(async () => {
await testBed.page.goto(testBed.baseUrl);
await testBed.page.setViewport({ width: 550, height: 550 });
await testBed.page.evaluate(() => {
(<ThemeChooserSk>document.getElementsByTagName('theme-chooser-sk')[0]).darkmode = false;
});
});
it('should render the demo page (smoke test)', async () => {
expect(await testBed.page.$$('skip-tasks-sk')).to.have.length(1);
});
describe('screenshots', () => {
it('starting point', async () => {
await takeScreenshot(testBed.page, 'task-scheduler', 'skip-tasks-sk_start');
// Take a screenshot in dark mode.
await testBed.page.evaluate(() => {
(<ThemeChooserSk>document.getElementsByTagName('theme-chooser-sk')[0]).darkmode = true;
});
await takeScreenshot(testBed.page, 'task-scheduler', 'skip-tasks-sk_start-dark');
});
it('adds a rule', async () => {
await testBed.page.click('add-icon-sk');
await testBed.page.type('#input-name', 'New Rule');
await testBed.page.type('#input-task-specs input', '.*');
// TODO(borenet): I would like to use a commit range here, but I was
// unable to automate the checking of the checkbox and subsequent
// rendering of the new input field.
await testBed.page.type('#input-range-start', 'abc123');
await testBed.page.type('#input-description', 'This is a detailed description of the rule.');
await takeScreenshot(testBed.page, 'task-scheduler', 'skip-tasks-sk_adding-rule');
await testBed.page.click('#add-button');
await takeScreenshot(testBed.page, 'task-scheduler', 'skip-tasks-sk_added-rule');
});
});
});