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); }
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))); } }
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()); }
public ReferenceInclude ParseReferenceInclude(string include) { return(new ReferenceInclude("blank", VersionWithSuffix.TryParse("0.0.0"))); }