UNPKG

fixturio

Version:
40 lines (39 loc) 1.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FixtureAsserter = void 0; const fixtureSifter_1 = require("./fixtureSifter"); class FixtureAsserter { assertInjectDependencies(fixture, injectDependencies) { this.assertArray(injectDependencies, `Dependencies for ${fixture.name} must be an array`); this.assertArrayItem(injectDependencies, (injectDependency) => { if (typeof injectDependency !== 'function' && typeof injectDependency !== 'string') { throw new Error(`Unknown fixture inject dependency ${injectDependency} for ${fixture.name}`); } }); } assertFixtureDependencies(fixture, fixtureDependencies) { this.assertArray(fixtureDependencies, `Dependencies for ${fixture.name} must be an array`); this.assertArrayItem(fixtureDependencies, (fixtureDependency) => { if ((0, fixtureSifter_1.isFixture)(fixtureDependency) === false) { throw new Error(`Unknown fixture dependency ${fixtureDependency} for ${fixture.name}`); } }); } assertTags(fixture, tags) { this.assertArray(tags, `Tags for ${fixture.name} must be an array`); this.assertArrayItem(tags, (tag) => { if (typeof tag !== 'string') { throw new Error(`Unknown tag ${tag} for ${fixture.name}`); } }); } assertArray(args, errorMessage) { if (!Array.isArray(args)) { throw new Error(errorMessage); } } assertArrayItem(items, fn) { items.forEach(fn); } } exports.FixtureAsserter = FixtureAsserter;