Example #1
0
        public void Epoch()
        {
            var v1 = new CKAN.Version("1.2.0");
            var v2 = new CKAN.Version("1:1.2.0");

            Assert.That(v1.IsLessThan(v2));
        }
Example #2
0
        public void AGExt()
        {
            var v1 = new CKAN.Version("1.20");
            var v2 = new CKAN.Version("1.22a");

            Assert.That(v2.IsGreaterThan(v1));
        }
Example #3
0
        public void Alpha()
        {
            var v1 = new CKAN.Version("apple");
            var v2 = new CKAN.Version("banana");

            // alphabetical test
            Assert.That(v1.IsLessThan(v2));
        }
Example #4
0
        public void Complex()
        {
            var v1 = new CKAN.Version("v6a12");
            var v2 = new CKAN.Version("v6a5");

            Assert.That(v2.IsLessThan(v1));
            Assert.That(v1.IsGreaterThan(v2));
            Assert.That(!v1.IsEqualTo(v2));
        }
Example #5
0
        public void Basic()
        {
            var v0 = new CKAN.Version("1.2.0");
            var v1 = new CKAN.Version("1.2.0");
            var v2 = new CKAN.Version("1.2.1");

            Assert.That(v1.IsLessThan(v2));
            Assert.That(v2.IsGreaterThan(v1));
            Assert.That(v1.IsEqualTo(v0));
        }
Example #6
0
        public void ReleaseNumber()
        {
            CKAN.Version version = CKAN.Meta.ReleaseNumber();

            if (version == null)
            {
                Assert.Inconclusive("No version detected - development build");
            }

            // We should always be in the form v0.xx (pre-release series),
            // or vx.x.x (released). We also permit a (-RC\d+) extension for
            // release candidates, and -PRE\d for pre-releases.

            Assert.IsTrue(
                Regex.IsMatch(version.ToString(), @"^v(?:0.\d+|\d+\.\d+\.\d+(?:-(?:RC|PRE)\d+)?)$"),
                version.ToString());
        }