示例#1
0
        public void CompareVersionsTest()
        {
            {
                var version1 = new InstallerVersion("1.2.3");
                var version2 = new InstallerVersion("1.2.3.0");
                Assert.AreEqual(version1 <= version2, true);
            }

            {
                var version1 = new InstallerVersion("1.2.3");
                var version2 = new InstallerVersion("1.2.3.4");
                Assert.AreEqual(version1 < version2, true);
            }

            {
                var version1 = new InstallerVersion("1.2.3");
                var version2 = new InstallerVersion("1.2.3.4");
                Assert.AreEqual(version1 >= version2, false);
            }

            {
                var version1 = new InstallerVersion("1.2.3.4");
                var version2 = new InstallerVersion("5.2.3.4");
                Assert.AreEqual(version1 > version2, false);
            }

            // Equals test
            {
                var version1 = new InstallerVersion("1.2.3");
                var version2 = new InstallerVersion("1.2.3");
                Assert.IsTrue(version1 == version2);
            }
            {
                var version1 = new InstallerVersion("1");
                var version2 = new InstallerVersion("1");
                Assert.IsTrue(version1 == version2);
            }
            {
                var version1 = new InstallerVersion("1.3.4.5");
                var version2 = new InstallerVersion("1.3.4.5.EEE");
                Assert.IsTrue(version1 == version2);
            }
            {
                var version = InstallerVersion.Parse("1.0.2.4");
                Assert.IsTrue(version.Equals(version));

                Assert.IsTrue(InstallerVersion.Parse("10.0.2.4").Equals(InstallerVersion.Parse("10.0.2.4")));
            }
            {
                var version1 = new InstallerVersion("33.11.234.0");
                var version2 = new InstallerVersion("1.222");
                Assert.IsTrue(version1 > version2);
                Assert.IsTrue(version2 < version1);
            }
        }
示例#2
0
        public void VersionRangeSomeTests()
        {
            {
                var target = VersionRange.Parse("1.2.3.4-2.0.0");
                Assert.IsTrue(target.VersionFrom == InstallerVersion.Parse("1.2.3.4"));
                Assert.IsTrue(target.VersionTo == InstallerVersion.Parse("2.0.0"));
            }
            {
                var target = VersionRange.Parse("-2.0.0");
                Assert.IsNull(target.VersionFrom);
                Assert.IsTrue(target.VersionTo == InstallerVersion.Parse("2.0.0"));
            }
            {
                var target = VersionRange.Parse("1 - 2.0.0.333");
                Assert.IsTrue(target.VersionFrom == InstallerVersion.Parse("1.0.0"));
                Assert.IsTrue(target.VersionTo == InstallerVersion.Parse("2.0.0.333"));

                Assert.IsTrue(target.Contains(InstallerVersion.Parse("1.0")));
                Assert.IsTrue(target.Contains(InstallerVersion.Parse("1.0.1")));
                Assert.IsFalse(target.Contains(InstallerVersion.Parse("2.1")));
            }

            {
                try
                {
                    var target = VersionRange.Parse("2 - 1");
                    Debug.WriteLine(target);
                    Assert.Fail("Must be thrown exception - Invalid range");
                }
                catch (UpgradeException ex)
                {
                    // Ok. Invalid version range (left is newer than right).
                    Debug.WriteLine(ex.Message);
                }
            }

            {
                try
                {
                    var target = VersionRange.Parse("1 - 1");
                    Debug.WriteLine(target);
                    Assert.Fail("Must be thrown exception - Invalid range");
                }
                catch (UpgradeException ex)
                {
                    // Ok. Invalid version range (left and right must be different).
                    Debug.WriteLine(ex.Message);
                }
            }
        }
示例#3
0
        public void ContainsTest()
        {
            var target = new VersionRanges("1.0; 2.1.3-3.0.0; 4.1.1.2.3");

            Assert.IsTrue(target.Contains(InstallerVersion.Parse("1")));
            Assert.IsTrue(target.Contains(InstallerVersion.Parse("2.1.3")));
            Assert.IsTrue(target.Contains(InstallerVersion.Parse("2.2")));
            Assert.IsTrue(target.Contains(InstallerVersion.Parse("3")));
            Assert.IsTrue(target.Contains(InstallerVersion.Parse("4.1.1.2")));

            Assert.IsFalse(target.Contains(InstallerVersion.Parse("0.99")));
            Assert.IsFalse(target.Contains(InstallerVersion.Parse("3.0.0.1")));
            Assert.IsFalse(target.Contains(InstallerVersion.Parse("4.1.1.0")));
            Assert.IsFalse(target.Contains(InstallerVersion.Parse("55")));
        }