public void TestVersionEquality(string v1, string v2, bool shouldBeEqual)
        {
            var version1 = VersionWithSuffix.TryParse(v1);
            var version2 = VersionWithSuffix.TryParse(v2);

            Assert.AreEqual(shouldBeEqual, version1.Equals(version2));
            Assert.AreEqual(shouldBeEqual, version1 == version2);
            Assert.AreNotEqual(shouldBeEqual, version1 != version2);
        }
Beispiel #2
0
        public IEnumerable <Package> ExtractPackages(DotNetXMLDoc xmlDoc)
        {
            foreach (XmlNode packageNode in xmlDoc.SelectNodes("//package"))
            {
                string id            = packageNode.Attributes["id"].Value;
                string version       = packageNode.Attributes["version"].Value;
                string dotNetVersion = packageNode.Attributes["targetFramework"]?.Value;

                yield return(new Package(id, VersionWithSuffix.TryParse(version), DotNetVersion.TryParse(dotNetVersion)));
            }
        }
Beispiel #3
0
        public ReferenceInclude ParseReferenceInclude(string include)
        {
            var parts = include.Split(',');

            var nameValues = parts
                             .Select(text => text.Split('='))
                             .Where(nv => nv.Length == 2)
                             .ToDictionary(k => k[0].Trim(), v => v[1].Trim());

            var version = nameValues.TryGet("Version");

            return(new ReferenceInclude(parts[0], VersionWithSuffix.TryParse(version)));
        }
        public void TestVersionOrdering()
        {
            List <VersionWithSuffix> versions = new List <VersionWithSuffix>();

            versions.Add(VersionWithSuffix.TryParse("9.3.2"));
            versions.Add(VersionWithSuffix.TryParse("9.3.2-alpha3"));
            versions.Add(VersionWithSuffix.TryParse("9.3.2-alpha1"));
            versions.Add(VersionWithSuffix.TryParse("9.2"));

            var sorted = versions.OrderByDescending(v => v).ToArray();

            Assert.AreEqual(sorted[0].ToString(), "9.3.2");
            Assert.AreEqual(sorted[1].ToString(), "9.3.2-alpha3");
            Assert.AreEqual(sorted[2].ToString(), "9.3.2-alpha1");
            Assert.AreEqual(sorted[3].ToString(), "9.2");
        }
        public void CanChangeVersionInPackagesConfig(string solutionPath, string projectName, string packageName, string dotNetVersion, string newVersion)
        {
            var solution = TestHelpers.GetSolution(solutionPath);
            var project  = solution.Projects.FirstOrDefault(p => p.Name == projectName);
            var modifier = DIRegistrar.GetInstance <NugetPackageModifier>();

            modifier.ChangeNugetPackageVersionInPackagesConfig(
                project,
                packageName,
                DotNetVersion.TryParse(dotNetVersion),
                VersionWithSuffix.TryParse(newVersion));

            var reader         = DIRegistrar.GetInstance <INugetReferenceReader>();
            var packagesConfig = reader.TryReadPackagesConfig(project.ProjectDirectory);
            var package        = packagesConfig.Packages.FirstOrDefault(p => p.ID == packageName);

            Assert.AreEqual(newVersion, package.Version.ToString());
        }
Beispiel #6
0
 public ReferenceInclude ParseReferenceInclude(string include)
 {
     return(new ReferenceInclude("blank", VersionWithSuffix.TryParse("0.0.0")));
 }