public bool TryGetEquivalentFrameworks(FrameworkRange range, out IEnumerable <NuGetFramework> frameworks) { if (range == null) { throw new ArgumentNullException("range"); } HashSet <NuGetFramework> relevant = new HashSet <NuGetFramework>(NuGetFramework.Comparer); foreach (var framework in _equivalentFrameworks.Keys.Where(f => range.Satisfies(f))) { relevant.Add(framework); } HashSet <NuGetFramework> results = new HashSet <NuGetFramework>(NuGetFramework.Comparer); foreach (var framework in relevant) { IEnumerable <NuGetFramework> values = null; if (TryGetEquivalentFrameworks(framework, out values)) { foreach (var val in values) { results.Add(val); } } } frameworks = results; return(results.Count > 0); }
public void FrameworkRange_BasicDoesNotSatisfy(string framework) { // Arrange var test = NuGetFramework.ParseFolder(framework); var range = new FrameworkRange(NuGetFramework.ParseFolder("net35"), NuGetFramework.ParseFolder("net451")); // Act & Assert Assert.False(range.Satisfies(test)); }
public void FrameworkRange_BasicSatisfiesExclusive(string framework) { // Arrange var test = NuGetFramework.ParseFolder(framework); var range = new FrameworkRange( NuGetFramework.ParseFolder("net35"), NuGetFramework.ParseFolder("net451"), includeMin: false, includeMax: false); // Act & Assert Assert.True(range.Satisfies(test)); }