export const description = 'Tests with subcases'; import { makeTestGroup } from '../common/framework/test_group.js'; import { UnitTest } from '../unittests/unit_test.js'; export const g = makeTestGroup(UnitTest); g.test('skip') .paramsSubcasesOnly(u => u.combine('y', [1, 2])) .fn(t => { t.skip('I skip!'); }); g.test('pass_warn_fail_skip') .params(u => u .combine('x', [0, 1, 2, 3]) // .beginSubcases() .combine('y', [1, 2, 3]) ) .fn(t => { const { x, y } = t.params; if (x + y >= 5) { t.fail('I fail!'); } else if (x + y >= 4) { t.warn('I warn!'); } if (x + y === 1 || x + y === 6) { t.skip('I skip!'); } }); g.test('DOMException,cases') .params(u => u.combine('fail', [false, true])) .fn(t => { if (t.params.fail) { throw new DOMException('Message!', 'Name!'); } }); g.test('DOMException,subcases') .paramsSubcasesOnly(u => u.combine('fail', [false, true])) .fn(t => { if (t.params.fail) { throw new DOMException('Message!', 'Name!'); } });