public void LibraryRange_ToLockFileDependencyGroupString(string versionRange, string expected) { // Arrange LibraryRange range = new LibraryRange() { Name = "packageA", VersionRange = VersionRange.Parse(versionRange), TypeConstraint = LibraryDependencyTarget.Project }; // Act and Assert Assert.Equal(expected, range.ToLockFileDependencyGroupString()); }
private static IList <string> ReadDependencies(JObject dependenciesToken) { var dependencies = new List <string>(); if (dependenciesToken != null) { foreach (var dependency in dependenciesToken) { string name = dependency.Key; string version = null; if (dependency.Value.Type == JTokenType.Object) { // { "PackageName" : { "version" :"1.0" ... } version = dependency.Value.Value <string>("version"); } else if (dependency.Value.Type == JTokenType.String) { // { "PackageName" : "1.0" } version = dependency.Value.Value <string>(); } else { throw new FormatException($"Unable to parse project.json file. Dependency '{name}' is not correctly formatted."); } var libraryRange = new LibraryRange { Name = name, VersionRange = VersionRange.Parse(version) }; dependencies.Add(libraryRange.ToLockFileDependencyGroupString()); } } return(dependencies); }