"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const assert_1 = tslib_1.__importDefault(require("assert")); const versions_1 = require("./versions"); const v0 = [0, 0, 0]; const v1 = [1, 0, 0]; const v1_2 = [1, 2, 0]; const v1_2_3 = [1, 2, 3]; describe('isValidVersion()', () => { it('should recognise valid versions', () => { assert_1.default.ok(versions_1.isValidVersion('v1.0.0')); assert_1.default.ok(versions_1.isValidVersion('1.0.0')); assert_1.default.ok(versions_1.isValidVersion('0.1.0')); assert_1.default.ok(versions_1.isValidVersion('0.0.1')); assert_1.default.ok(versions_1.isValidVersion('0.0.0')); assert_1.default.ok(versions_1.isValidVersion('v0.0.0')); }); it('should recognise invalid versions', () => { assert_1.default.ok(!versions_1.isValidVersion('v 1.0.0')); assert_1.default.ok(!versions_1.isValidVersion('1')); assert_1.default.ok(!versions_1.isValidVersion('1.1')); }); }); describe("parseVersion()", () => { it("should parse simple versions", () => { assert_1.default.deepStrictEqual(versions_1.parseVersion('v0.0.0'), v0); assert_1.default.deepStrictEqual(versions_1.parseVersion('v1.0.0'), v1); assert_1.default.deepStrictEqual(versions_1.parseVersion('v1.2.0'), v1_2); assert_1.default.deepStrictEqual(versions_1.parseVersion('v1.2.3'), v1_2_3); }); }); describe('compareVersions()', () => { it('should compare equal version', () => { assert_1.default.throws(() => versions_1.compareVersions('', '')); assert_1.default.strictEqual(versions_1.compareVersions('1.0.0', '1.0.0'), 0); assert_1.default.strictEqual(versions_1.compareVersions('1.2.0', '1.2.0'), 0); assert_1.default.strictEqual(versions_1.compareVersions('1.2.3', '1.2.3'), 0); assert_1.default.strictEqual(versions_1.compareVersions('v1.0.0', '1.0.0'), 0); }); it('should compare greater version', () => { assert_1.default.throws(() => versions_1.compareVersions('', '')); assert_1.default.strictEqual(versions_1.compareVersions('2.0.0', '1.0.0'), 1); assert_1.default.strictEqual(versions_1.compareVersions('1.1.0', '1.0.0'), 1); assert_1.default.strictEqual(versions_1.compareVersions('1.0.4', '1.0.0'), 1); assert_1.default.strictEqual(versions_1.compareVersions('v1.1.0', '1.0.0'), 1); assert_1.default.strictEqual(versions_1.compareVersions('1.1.0', 'v1.0.0'), 1); }); it('should compare smaller version', () => { assert_1.default.throws(() => versions_1.compareVersions('', '')); assert_1.default.strictEqual(versions_1.compareVersions('1.0.0', '2.0.0'), -1); assert_1.default.strictEqual(versions_1.compareVersions('1.0.0', '1.1.0'), -1); assert_1.default.strictEqual(versions_1.compareVersions('1.0.0', '1.0.4'), -1); assert_1.default.strictEqual(versions_1.compareVersions('1.0.0', 'v1.1.0'), -1); assert_1.default.strictEqual(versions_1.compareVersions('v1.0.0', '1.1.0'), -1); }); }); //# sourceMappingURL=versions.test.js.map