// All possible ways to parse a version from a string private static List <SemanticVersion> Parse(string version) { // Parse var versions = new List <SemanticVersion>(); versions.Add(SemanticVersion.Parse(version)); // TryParse SemanticVersion nuVer = null; SemanticVersion.TryParse(version, out nuVer); versions.Add(nuVer); // TryParseStrict nuVer = null; SemanticVersion.TryParseStrict(version, out nuVer); versions.Add(nuVer); // Constructors var normal = SemanticVersion.Parse(version); versions.Add(normal); versions.Add(new SemanticVersion(SemanticVersion.Parse(version))); return(versions); }
public void SemVerVersionValidReleaseLabels(string versionString) { // Arrange & act SemanticVersion semVer = null; var valid = SemanticVersion.TryParseStrict(versionString, out semVer); // Assert Assert.True(valid); }
public void SemVerVersionLeadingZeros(string versionString) { // Arrange & act SemanticVersion semVer = null; var valid = SemanticVersion.TryParseStrict(versionString, out semVer); // Assert Assert.False(valid); }
public void SemVerVersionMustBe3Parts(string version, bool expected) { // Arrange & act SemanticVersion semVer = null; var valid = SemanticVersion.TryParseStrict(version, out semVer); // Assert Assert.Equal(expected, valid); }
public void SemVerVersionMetadataNonEmptyParts(string versionString) { // Arrange & act SemanticVersion semVer = null; var valid = SemanticVersion.TryParseStrict(versionString, out semVer); // Assert Assert.False(valid); }
public void SemVerVersionMetadataOrder(string versionString) { // Arrange & act SemanticVersion semVer = null; var valid = SemanticVersion.TryParseStrict(versionString, out semVer); // Assert Assert.True(valid); Assert.True(string.IsNullOrEmpty(semVer.SpecialVersion)); }
public IEnumerable <PackageIssue> Validate(IPackage package) { SemanticVersion semVer; if (!SemanticVersion.TryParseStrict(package.Version.ToString(), out semVer)) { yield return(new PackageIssue(LocalizedResourceManager.GetString("Warning_SemanticVersionTitle"), String.Format(CultureInfo.CurrentCulture, LocalizedResourceManager.GetString("Warning_SemanticVersion"), package.Version), LocalizedResourceManager.GetString("Warning_SemanticVersionSolution"))); } }
public void SemVerSortIgnoreReleaseCasing(string a, string b) { // Arrange & act SemanticVersion semVerA = null, semVerB = null; SemanticVersion.TryParseStrict(a, out semVerA); SemanticVersion.TryParseStrict(b, out semVerB); // Assert Assert.True(semVerA == semVerB); }
public void SemVerSortReleaseLabelCount(string lower, string higher) { // Arrange & act SemanticVersion lowerSemVer = null, higherSemVer = null; SemanticVersion.TryParseStrict(lower, out lowerSemVer); SemanticVersion.TryParseStrict(higher, out higherSemVer); // Assert Assert.True(lowerSemVer < higherSemVer); }
public void SemVerSortNumericAlpha(string lower, string higher) { // Arrange & act SemanticVersion lowerSemVer = null, higherSemVer = null; SemanticVersion.TryParseStrict(lower, out lowerSemVer); SemanticVersion.TryParseStrict(higher, out higherSemVer); // Assert Assert.True(lowerSemVer < higherSemVer); }
public IEnumerable <PackageIssue> Validate(IPackage package) { SemanticVersion semVer; if (!SemanticVersion.TryParseStrict(package.Version.ToString(), out semVer)) { yield return(new PackageIssue(NuGetResources.Warning_SemanticVersionTitle, String.Format(CultureInfo.CurrentCulture, NuGetResources.Warning_SemanticVersion, package.Version), NuGetResources.Warning_SemanticVersionSolution)); } }