public void ToStringReturnsOriginalValue(string version)
        {
            // Act
            SemanticVersion semVer = new SemanticVersion(version);

            // Assert
            Assert.Equal(version, semVer.ToString());
            Assert.Equal(version, semVer.ToOriginalString());
        }
        /// <summary>
        /// Determine the latest version in the Versions dictionary
        /// <summary>
        public string GetLatestVersion(bool skipPreRelease = true)
        {
            SemanticVersion semVersion  = new SemanticVersion("0.0.0");
            List <string>   allVersions = new List <string>(Versions.Keys);


            foreach (string version in allVersions)
            {
                SemanticVersion versionCandidate = new SemanticVersion(version);

                if (skipPreRelease && !string.IsNullOrEmpty(versionCandidate.SpecialVersion))
                {
                    continue;
                }

                if (versionCandidate.CompareTo(semVersion) > 0)
                {
                    semVersion = versionCandidate;
                }
            }
            return(semVersion.ToOriginalString());
        }
Example #3
0
        public void Constructor_DeserializesSemVer2Version()
        {
            // Arrange
            var cacheFile  = "{\"SchemaVersion\":\"3.0.0\",\"Packages\":[{\"Id\":\"" + PackageId + "\",\"Version\":\"" + SemVer2VersionString + "\"}]}";
            var fileSystem = new Mock <IFileSystem>();

            fileSystem
            .Setup(x => x.FileExists(CacheFileName))
            .Returns(true);
            fileSystem
            .Setup(x => x.OpenFile(CacheFileName))
            .Returns(() => new MemoryStream(Encoding.UTF8.GetBytes(cacheFile)));

            // Act
            var actual = new ServerPackageCache(fileSystem.Object, CacheFileName);

            // Assert
            Assert.Equal(1, actual.GetAll().Count());
            var package = actual.GetAll().First();

            Assert.Equal(SemVer2Version.ToOriginalString(), package.Version.ToOriginalString());
            Assert.Equal(SemVer2Version.ToFullString(), package.Version.ToFullString());
            Assert.Equal(SemVer2Version.ToNormalizedString(), package.Version.ToNormalizedString());
        }