public void Equality() { // Set up var assemblyName = "MyNuGetPackage, Version=1.0.4"; var frameworkName = new FrameworkName("SomeFramework", Version.Parse("5.6.7.2")); var package1 = "MyNuGetPackageId.1"; var package1Version1 = "1.2.2"; var package1Version2 = "1.2.3"; var original = new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { frameworkName, package1Version1 } }, assemblyName); var compared = new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { frameworkName, package1Version1 } }, assemblyName); var comparedNotSamePackages = new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { frameworkName, package1Version2 } }, assemblyName); // Act & Assert Assert.True(original.Equals(compared)); Assert.False(original.Equals("something")); Assert.False(original.Equals(null)); Assert.False(original.Equals(comparedNotSamePackages)); }
public void Ctor_ValidArguments_PropertiesSet() { var testSubject = new NuGetPackageInfo("my id", "my version"); testSubject.Id.Should().Be("my id"); testSubject.Version.Should().Be("my version"); }
public void SortingTest() { var target1 = NetStandard16; var target2 = Net40; var packageId1 = "Remotion.Linq"; var packageId2 = "Antlr3.Runtime"; var packageId3 = "NHibernate"; var nuget1 = new NuGetPackageInfo(packageId1, new Dictionary <FrameworkName, string>(), ""); var nuget2 = new NuGetPackageInfo(packageId2, new Dictionary <FrameworkName, string>(), ""); var nuget3 = new NuGetPackageInfo(packageId3, new Dictionary <FrameworkName, string>(), ""); var nugetList = new List <NuGetPackageInfo>() { nuget1, nuget2, nuget3 }; nugetList.Sort(new NuGetPackageInfoComparer()); var expectedOrderedlist = new List <NuGetPackageInfo>() { nuget2, nuget3, nuget1 }; Assert.Equal(expectedOrderedlist, nugetList); }
public void OfflineModeTest() { var args = TestHelper.GetArguments("OfflineTest.slnx", "--offline"); var p = new NuGetPackageInfo("MyLocalTestApp", "1.0.0", TestHelper.GetStimulPathFor("Packages"), NuGetPackageType.DotNet, TestHelper.GetResultPathFor("Cache")); //Ensure the packet doesn't exists Assert.Throws(typeof(NuGetClientHelper.Exceptions.PackageInstallationException), () => SlnLauncher.Program.Main(args)); //Manually install the package from the local copy NuGetClientHelper.NuGetClientHelper.InstallPackages(new[] { p }, false, null, NuGet.Frameworks.NuGetFramework.ParseFolder("net48")); Assert.DoesNotThrow(() => SlnLauncher.Program.Main(args)); }
public IEnumerable <NuGetPackageInfo> GetNuGetPackagesInfo(IEnumerable <string> referencedNuGetPackages, IEnumerable <FrameworkName> targets) { foreach (var package in referencedNuGetPackages) { if (_packageFinder.TryFindSupportedVersions(package, targets, out var supportedVersions)) { var nuGetpackageInfo = new NuGetPackageInfo(package, supportedVersions); yield return(nuGetpackageInfo); } } }
public void NuGetPackageInfoCreated() { var assemblyInfo = "MyDll, Version=1.5.3"; var frameworkName = new FrameworkName("SomeFramework", Version.Parse("5.6.7.2")); var package1 = "MyNuGetPackageId.1"; var package1Version = "1.2.2"; var packageInfo = new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { frameworkName, package1Version } }, assemblyInfo); Assert.Equal(package1, packageInfo.PackageId); Assert.Equal(assemblyInfo, packageInfo.AssemblyInfo); Assert.Equal(frameworkName, packageInfo.SupportedVersions.First().Key); }
private IEnumerable <string> GetPackageReferences(Project project) { var componentModel = (IComponentModel)Microsoft.VisualStudio.Shell.ServiceProvider.GlobalProvider.GetService(typeof(SComponentModel)); var installerServices = componentModel.GetService <IVsPackageInstallerServices>(); if (installerServices == null) { _outputWindowWriter.WriteLine(LocalizedStrings.ErrorGettingInstalledPackages); return(Enumerable.Empty <string>()); } var installedPackages = installerServices.GetInstalledPackages(project); return(installedPackages.Where(p => !NuGetPackageInfo.IsImplicitlyReferencedPackage(p.Id)).Select(n => n.Id)); }
public void InvalidConstruction() { var assemblyInfo = "MyDll, Version=1.5.3"; var frameworkName = new FrameworkName("SomeFramework", Version.Parse("5.6.7.2")); var package1 = "MyNuGetPackageId.1"; var package1Version = "1.2.2"; var packageInfo = new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { frameworkName, package1Version } }, assemblyInfo); Assert.Throws <ArgumentNullException>(() => new NuGetPackageInfo(null, new Dictionary <FrameworkName, string> { { frameworkName, package1Version } }, assemblyInfo)); Assert.Throws <ArgumentException>(() => new NuGetPackageInfo("", new Dictionary <FrameworkName, string> { { frameworkName, package1Version } }, assemblyInfo)); Assert.Throws <ArgumentNullException>(() => new NuGetPackageInfo(package1, new Dictionary <FrameworkName, string> { { null, package1Version } }, assemblyInfo)); }
private void ExtendList(List <NuGetPackageInfo> packages, PackageType[] importedValues, Uri offlineCache) { if (importedValues != null) { foreach (var e in importedValues) { string source = offlineCache?.ToString() ?? SafeExpandEnvironmentVariables(e.source); var dependenciesSources = offlineCache?.ToString() ?? SafeExpandEnvironmentVariables(e.dependencySources); var candidate = new NuGetPackageInfo(SafeExpandEnvironmentVariables(e.id), SafeExpandEnvironmentVariables(e.version), source, dependenciesSources?.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries), IsDotNet(e), PackagesPath, !e.dependenciesForceMinVersionSpecified || e.dependenciesForceMinVersion, SafeExpandEnvironmentVariables(e.customPath)); var alreadyPresent = packages.Where((x) => x.Identity.Id.Equals(candidate.Identity.Id, StringComparison.OrdinalIgnoreCase)); if (alreadyPresent.Count() == 0) { packages.Add(candidate); } } } }