Пример #1
0
        public void union_with_lock_and_MinQuality()
        {
            var b10 = new SVersionBound(V100, SVersionLock.LockMinor, PackageQuality.None);
            var b11 = new SVersionBound(V110, SVersionLock.LockMajor, PackageQuality.Stable);

            b10.Contains(b11).Should().BeFalse("The 1.0 minor is locked.");
            b11.Contains(b10).Should().BeFalse("The 1.1 base version is greater than the 1.0 base version.");

            var u = b10.Union(b11);

            u.Should().Be(b11.Union(b10));

            u.Base.Should().Be(SVersion.Create(1, 0, 0));
            u.Lock.Should().Be(SVersionLock.LockMajor);
            u.MinQuality.Should().Be(PackageQuality.CI);

            var b21 = new SVersionBound(V210, SVersionLock.LockMajor, PackageQuality.Exploratory);

            var u2 = b21.Union(b11);

            u2.Should().Be(b11.Union(b21));

            u2.Base.Should().Be(SVersion.Create(1, 1, 0));
            u2.Lock.Should().Be(SVersionLock.LockMajor);
            u2.MinQuality.Should().Be(PackageQuality.Exploratory);
        }
Пример #2
0
 public void SVersion_can_be_compared_with_operators()
 {
     Assert.That(SVersion.Create(0, 0, 0) > SVersion.Create(0, 0, 0, "a"));
     Assert.That(SVersion.Create(0, 0, 0) >= SVersion.Create(0, 0, 0, "a"));
     Assert.That(SVersion.Create(0, 0, 0, "a") < SVersion.Create(0, 0, 0));
     Assert.That(SVersion.Create(0, 0, 0, "a") <= SVersion.Create(0, 0, 0));
     Assert.That(SVersion.Create(0, 0, 0, "a") != SVersion.Create(0, 0, 0));
 }
Пример #3
0
        /// <summary>
        /// Adds the <see cref="NPMSolution"/> to the <paramref name="globalInfo"/>
        /// </summary>
        /// <param name="this">This global info.</param>
        /// <param name="solution">The NPM solution.</param>
        /// <returns>This info.</returns>
        public static StandardGlobalInfo AddNPM(this StandardGlobalInfo globalInfo, NPMSolution solution)
        {
            SVersion minmimalNpmVersionRequired = SVersion.Create(6, 7, 0);
            string   npmVersion = globalInfo.Cake.NpmGetNpmVersion();

            if (SVersion.Parse(npmVersion) < minmimalNpmVersionRequired)
            {
                globalInfo.Cake.TerminateWithError("Outdated npm. Version older than v6.7.0 are known to fail on publish.");
            }
            globalInfo.RegisterSolution(solution);
            return(globalInfo);
        }
Пример #4
0
        static SVersion GetPackageVersion(Assembly a, AssemblyName n)
        {
            var info = InformationalVersion.ReadFromAssembly(a);

            if (info.IsValidSyntax && info.Version !.IsValid)
            {
                return(info.Version);
            }
            var v = n.Version;

            return(SVersion.Create(v.Major, v.Minor, v.Build));
        }
Пример #5
0
        public void the_Zero_SVersion_is_syntaxically_valid_and_greater_than_null()
        {
            Assert.That(SVersion.ZeroVersion.IsValid);
            Assert.That(SVersion.ZeroVersion > null);
            Assert.That(null < SVersion.ZeroVersion);
            Assert.That(SVersion.ZeroVersion >= null);
            Assert.That(null <= SVersion.ZeroVersion);

            var aZero = SVersion.Create(0, 0, 0, "0");

            Assert.That(aZero == SVersion.ZeroVersion);
            Assert.That(aZero >= SVersion.ZeroVersion);
            Assert.That(aZero <= SVersion.ZeroVersion);
        }
Пример #6
0
        public static (bool Locked, SVersion Version) TryParseSimpleRange(IActivityMonitor m, string r)
        {
            SVersion v = SVersion.TryParse(r);

            if (!v.IsValid &&
                r != null && r.Length > 3)
            {
                if (r[0] == '[' && r[r.Length - 1] == ']')
                {
                    return(true, SVersion.TryParse(r.Substring(1, r.Length - 2)));
                }

                string[] numbers = r.Split('.');
                if (numbers.Length == 4)
                {
                    m.Warn($"Old Version in format X.Y.Z.A :'{r}', removing last number to parse it, new version:'{numbers[0]}.{numbers[1]}.{numbers[2]}'");
                    v = SVersion.Create(int.Parse(numbers[0]), int.Parse(numbers[1]), int.Parse(numbers[2]));
                }
            }
            return(false, v);
        }
Пример #7
0
        public async Task ViewWithVersionReturnValidJson()
        {
            (string viewJson, bool exist) = await _registry.View(TestHelper.Monitor, "@signature/json-graph-serializer", SVersion.Create(0, 0, 1));

            exist.Should().BeTrue();
            JObject json = JObject.Parse(viewJson);

            json["version"].ToString().Should().Be("0.0.1");
            json["name"].ToString().Should().Be("@signature/json-graph-serializer");
        }
Пример #8
0
        public async Task ViewWithVersionReturnValidJson()
        {
            bool exist = await _registry.ExistAsync(TestHelper.Monitor, "@signature/json-graph-serializer", SVersion.Create(0, 0, 1));

            exist.Should().BeTrue();
            bool notExist = await _registry.ExistAsync(TestHelper.Monitor, "@signature/packageThatDoesntExist", SVersion.Create(0, 0, 1));

            notExist.Should().BeFalse();
            bool versionNotExist = await _registry.ExistAsync(TestHelper.Monitor, "@signature/json-graph-serializer", SVersion.Create(0, 0, 0));

            versionNotExist.Should().BeFalse();
        }