public static void ComputeAssembliesToRemove_PackageFound() { // Arrange var userNuGetPackage = GetAssemblyInfo("NugetPackageAssembly", "2.0.5.0", isExplicitlySpecified: false); var inputAssemblies = new[] { GetAssemblyInfo("TestUserAssembly", "2.0.5.0", isExplicitlySpecified: true), userNuGetPackage, GetAssemblyInfo("TestUserLibrary", "5.0.0", isExplicitlySpecified: true), }; var targets = new[] { Windows81, NetStandard16 }; var packageId = "SomeNuGetPackage"; var packageVersion = "2.0.1"; var engine = new AnalysisEngine(Substitute.For <IApiCatalogLookup>(), Substitute.For <IApiRecommendations>(), Substitute.For <IPackageFinder>()); var nugetPackageResult = new[] { new NuGetPackageInfo(packageId, new Dictionary <FrameworkName, string>() { { Windows81, packageVersion }, { NetStandard16, packageVersion } }, userNuGetPackage.AssemblyIdentity) }; // Act var assemblies = engine.ComputeAssembliesToRemove(inputAssemblies, targets, nugetPackageResult); // Assert Assert.Single(assemblies); Assert.Equal(assemblies.First(), userNuGetPackage.AssemblyIdentity); }
public static void ComputeAssembliesToRemove_AssemblyFlagNotSet() { // Arrange var userNuGetPackage = GetAssemblyInfo("NugetPackageAssembly", "2.0.5.0"); var inputAssemblies = new[] { userNuGetPackage }; var targets = new[] { Windows81, NetStandard16 }; var packageId = "SomeNuGetPackage"; var packageVersion = "2.0.1"; var engine = new AnalysisEngine(Substitute.For <IApiCatalogLookup>(), Substitute.For <IApiRecommendations>(), Substitute.For <IPackageFinder>()); var nugetPackageResult = new[] { new NuGetPackageInfo(packageId, new Dictionary <FrameworkName, string>() { { Windows81, packageVersion }, { NetStandard16, packageVersion } }, userNuGetPackage.AssemblyIdentity) }; var assemblies = engine.ComputeAssembliesToRemove(inputAssemblies, targets, nugetPackageResult); Assert.Empty(assemblies); }