UNPKG

jest-test-each

Version:

run parametrised tests easily [typesafe] without text tables or arrays of arrays.

93 lines (92 loc) 2.77 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tree_1 = require("../../tree"); describe('tree units', function () { const tree = (data) => { const root = tree_1.createTree(data, 100, [], undefined); let result = []; const byTree = (node, level) => { result.push(' '.repeat(level * 2) + 'suite: ' + node.name); node.tests.forEach(c => { result.push(' '.repeat(level * 4) + 'test: ' + c.name.name); }); node.children.forEach((c, i) => { byTree(c, level + 1); }); }; byTree(root, 0); return result; }; it('check tree', () => { const data = [ [{ abc: 1 }, { abc: 2 }], [{ efg: 1 }, { efg: 2 }, { efg: 3 }], [{ hij: 1 }, { hij: 3 }], ]; const result = tree(data); expect(result.join('\n-')).toMatchInlineSnapshot(` "suite: - suite: abc: 1 - suite: efg: 1 - test: hij: 1 - test: hij: 3 - suite: efg: 2 - test: hij: 1 - test: hij: 3 - suite: efg: 3 - test: hij: 1 - test: hij: 3 - suite: abc: 2 - suite: efg: 1 - test: hij: 1 - test: hij: 3 - suite: efg: 2 - test: hij: 1 - test: hij: 3 - suite: efg: 3 - test: hij: 1 - test: hij: 3" `); }); it('merge tree', () => { const data = [[{ a: 1 }, { a: 2 }], [{ b: 1 }, { b: 2 }, { b: 3 }], [{ c: 1 }]]; const result = tree(data); expect(result.join('\n-')).toMatchInlineSnapshot(` "suite: - suite: a: 1 - test: b: 1, c: 1 - test: b: 2, c: 1 - test: b: 3, c: 1 - suite: a: 2 - test: b: 1, c: 1 - test: b: 2, c: 1 - test: b: 3, c: 1" `); }); it('merge tree - 1 single at start', () => { const data = [[{ a: 1 }], [{ b: 1 }, { b: 2 }, { b: 3 }]]; const result = tree(data); expect(result.join('\n-')).toMatchInlineSnapshot(` "suite: - suite: a: 1 - test: b: 1 - test: b: 2 - test: b: 3" `); }); it('merge tree - 1 single in center', () => { const data = [[{ a: 1 }, { a: 2 }], [{ b: 1 }], [{ c: 1 }, { c: 2 }, { c: 3 }]]; const result = tree(data); expect(result.join('\n-')).toMatchInlineSnapshot(` "suite: - suite: a: 1, b: 1 - test: c: 1 - test: c: 2 - test: c: 3 - suite: a: 2, b: 1 - test: c: 1 - test: c: 2 - test: c: 3" `); }); });