@drozdik.m/version
Version:
Version package for version management
99 lines (98 loc) • 5.36 kB
JavaScript
exports.__esModule = true;
var unit_test_1 = require("@drozdik.m/unit-test");
var Version_1 = require("../src/Version");
var unitTest = new unit_test_1.UnitTest("Version");
unitTest.AddTestCase("Getters", function () {
var version = new Version_1.Version(1, 2, 3);
unit_test_1.Assert.AreEqual(1, version.Major());
unit_test_1.Assert.AreEqual(2, version.Minor());
unit_test_1.Assert.AreEqual(3, version.Patch());
});
unitTest.AddTestCase("Comparator patch", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 2, 4);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.AreEqual(-1, comparator(version1, version2));
unit_test_1.Assert.AreEqual(1, comparator(version2, version1));
unit_test_1.Assert.AreEqual(0, comparator(version3, version1));
});
unitTest.AddTestCase("Comparator minor", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 3, 0);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.AreEqual(-1, comparator(version1, version2));
unit_test_1.Assert.AreEqual(1, comparator(version2, version1));
unit_test_1.Assert.AreEqual(0, comparator(version3, version1));
});
unitTest.AddTestCase("Comparator major", function () {
var version1 = new Version_1.Version(1, 2, 0);
var version2 = new Version_1.Version(2, 1, 0);
var version3 = new Version_1.Version(1, 2, 0);
var comparator = version1.GetComparator();
unit_test_1.Assert.AreEqual(-1, comparator(version1, version2));
unit_test_1.Assert.AreEqual(1, comparator(version2, version1));
unit_test_1.Assert.AreEqual(0, comparator(version3, version1));
});
unitTest.AddTestCase("Compare to", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 2, 4);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.AreEqual(-1, version1.CompareTo(version2));
unit_test_1.Assert.AreEqual(1, version2.CompareTo(version1));
unit_test_1.Assert.AreEqual(0, version1.CompareTo(version3));
});
unitTest.AddTestCase("Equal", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 2, 4);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.IsFalse(version1.Equals(version2));
unit_test_1.Assert.IsTrue(version1.Equals(version3));
unit_test_1.Assert.IsFalse(version2.Equals(version3));
unit_test_1.Assert.IsFalse(version2.Equals(version1));
unit_test_1.Assert.IsTrue(version3.Equals(version1));
unit_test_1.Assert.IsFalse(version3.Equals(version2));
});
unitTest.AddTestCase("Less than", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 2, 4);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.IsTrue(version1.LessThan(version2));
unit_test_1.Assert.IsFalse(version1.LessThan(version3));
unit_test_1.Assert.IsFalse(version2.LessThan(version3));
unit_test_1.Assert.IsFalse(version2.LessThan(version1));
unit_test_1.Assert.IsFalse(version3.LessThan(version1));
unit_test_1.Assert.IsTrue(version3.LessThan(version2));
});
unitTest.AddTestCase("Greater than", function () {
var version1 = new Version_1.Version(1, 2, 3);
var version2 = new Version_1.Version(1, 2, 4);
var version3 = new Version_1.Version(1, 2, 3);
var comparator = version1.GetComparator();
unit_test_1.Assert.IsFalse(version1.GreaterThan(version2));
unit_test_1.Assert.IsFalse(version1.GreaterThan(version3));
unit_test_1.Assert.IsTrue(version2.GreaterThan(version3));
unit_test_1.Assert.IsTrue(version2.GreaterThan(version1));
unit_test_1.Assert.IsFalse(version3.GreaterThan(version1));
unit_test_1.Assert.IsFalse(version3.GreaterThan(version2));
});
unitTest.AddTestCase("To string", function () {
unit_test_1.Assert.AreEqual("1.2.3", new Version_1.Version(1, 2, 3).toString());
unit_test_1.Assert.AreEqual("3.2.1", new Version_1.Version(3, 2, 1).toString());
});
unitTest.AddTestCase("From string", function () {
unit_test_1.Assert.AreEqual("1.2.3", Version_1.Version.FromString("1.2.3").toString());
unit_test_1.Assert.AreEqual("1.2.0", Version_1.Version.FromString("1.2").toString());
unit_test_1.Assert.AreEqual("1.0.0", Version_1.Version.FromString("1").toString());
unit_test_1.Assert.AreEqual("1.2.3", Version_1.Version.FromString("1.2.3.4.5.6").toString());
unit_test_1.Assert.AreEqual("1.1.-1", Version_1.Version.FromString("1.1.x").toString());
unit_test_1.Assert.AreEqual("1.-1.-1", Version_1.Version.FromString("1.x.x").toString());
unit_test_1.Assert.AreEqual("-1.-1.-1", Version_1.Version.FromString("x.x.x").toString());
unit_test_1.Assert.AreEqual("-1.-1.-1", Version_1.Version.FromString("y.x..").toString());
unit_test_1.Assert.AreEqual("-1.0.0", Version_1.Version.FromString("wtf").toString());
});
unitTest.Run();