blob: 7dd710a42939d3692f247e91efb3b1284107455b [file] [log] [blame]
import { expect } from 'chai';
import { ElementHandle } from 'puppeteer';
import {
loadCachedTestBed,
takeScreenshot,
TestBed,
} from '../../../puppeteer-tests/util';
import { TriageSkPO } from './triage-sk_po';
describe('triage-sk', () => {
let testBed: TestBed;
before(async () => {
testBed = await loadCachedTestBed();
});
beforeEach(async () => {
await testBed.page.goto(testBed.baseUrl);
});
it('should render the demo page', async () => {
expect(await testBed.page.$$('triage-sk')).to.have.length(1); // Smoke test.
});
describe('screenshots', async () => {
let triageSk: ElementHandle;
let triageSkPO: TriageSkPO;
beforeEach(async () => {
triageSk = (await testBed.page.$('triage-sk'))!;
triageSkPO = new TriageSkPO(triageSk);
});
it('should be untriaged by default', async () => {
await takeScreenshot(triageSk, 'gold', 'triage-sk_untriaged');
});
it('should be read only', async () => {
await testBed.page.click('#read-only-checkbox');
await takeScreenshot(triageSk, 'gold', 'triage-sk_read-only');
});
it('should be negative', async () => {
await triageSkPO.clickButton('negative');
await testBed.page.click('body'); // Remove focus from button.
await takeScreenshot(triageSk, 'gold', 'triage-sk_negative');
});
it('should be positive', async () => {
await triageSkPO.clickButton('positive');
await testBed.page.click('body'); // Remove focus from button.
await takeScreenshot(triageSk, 'gold', 'triage-sk_positive');
});
it('should be positive, with button focused', async () => {
await triageSkPO.clickButton('positive');
await takeScreenshot(
triageSk,
'gold',
'triage-sk_positive-button-focused'
);
});
});
});