public async Task TestOptionsOffered() { // Make a loose mock for the installer service. We don't care what this test // calls on it. var installerServiceMock = new Mock <IPackageInstallerService>(MockBehavior.Loose); installerServiceMock.SetupGet(i => i.IsEnabled).Returns(true); installerServiceMock.SetupGet(i => i.PackageSources).Returns(NugetPackageSources); installerServiceMock.Setup(s => s.GetInstalledVersions("NuGetPackage")) .Returns(new[] { "1.0", "2.0" }); var packageServiceMock = new Mock <ISymbolSearchService>(); packageServiceMock.Setup(s => s.FindPackagesWithType( NugetOrgSource, "NuGetType", 0, It.IsAny <CancellationToken>())) .Returns(CreateSearchResult("NuGetPackage", "NuGetType", CreateNameParts("NS1", "NS2"))); var data = new FixProviderData(installerServiceMock.Object, packageServiceMock.Object); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Use local version '1.0'", index : 0, fixProviderData : data); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Use local version '2.0'", index : 1, fixProviderData : data); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Find and install latest version", index : 2, fixProviderData : data); }
public async Task TestOptionsOffered() { var installerServiceMock = new Mock <IPackageInstallerService>(MockBehavior.Strict); installerServiceMock.Setup(i => i.IsEnabled(It.IsAny <ProjectId>())).Returns(true); installerServiceMock.Setup(i => i.IsInstalled(It.IsAny <Workspace>(), It.IsAny <ProjectId>(), "NuGetPackage")).Returns(false); installerServiceMock.Setup(i => i.GetProjectsWithInstalledPackage(It.IsAny <Solution>(), "NuGetPackage", "1.0")).Returns(Enumerable.Empty <Project>()); installerServiceMock.Setup(i => i.GetProjectsWithInstalledPackage(It.IsAny <Solution>(), "NuGetPackage", "2.0")).Returns(Enumerable.Empty <Project>()); installerServiceMock.Setup(i => i.TryGetPackageSourcesAsync(It.IsAny <bool>(), It.IsAny <CancellationToken>())).Returns(NugetPackageSources); installerServiceMock.Setup(s => s.GetInstalledVersions("NuGetPackage")) .Returns(ImmutableArray.Create("1.0", "2.0")); var packageServiceMock = new Mock <ISymbolSearchService>(MockBehavior.Strict); packageServiceMock.Setup(s => s.FindReferenceAssembliesWithTypeAsync("NuGetType", 0, It.IsAny <CancellationToken>())) .Returns(Task.FromResult <IList <ReferenceAssemblyWithTypeResult> >(new List <ReferenceAssemblyWithTypeResult>())); packageServiceMock.Setup(s => s.FindPackagesWithTypeAsync( NugetOrgSource, "NuGetType", 0, It.IsAny <CancellationToken>())) .Returns(CreateSearchResult("NuGetPackage", "NuGetType", CreateNameParts("NS1", "NS2"))); var data = new FixProviderData(installerServiceMock.Object, packageServiceMock.Object); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", string.Format(FeaturesResources.Use_local_version_0, "1.0"), parameters : new TestParameters(fixProviderData: data)); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", string.Format(FeaturesResources.Use_local_version_0, "2.0"), parameters : new TestParameters(index: 1, fixProviderData: data)); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", FeaturesResources.Find_and_install_latest_version, parameters : new TestParameters(index: 2, fixProviderData: data)); }
public async Task TestOptionsOffered() { // Make a loose mock for the installer service. We don't care what this test // calls on it. var installerServiceMock = new Mock <IPackageInstallerService>(MockBehavior.Loose); installerServiceMock.Setup(i => i.IsEnabled(It.IsAny <ProjectId>())).Returns(true); installerServiceMock.SetupGet(i => i.PackageSources).Returns(NugetPackageSources); installerServiceMock.Setup(s => s.GetInstalledVersions("NuGetPackage")) .Returns(ImmutableArray.Create("1.0", "2.0")); var packageServiceMock = new Mock <ISymbolSearchService>(); packageServiceMock.Setup(s => s.FindPackagesWithTypeAsync( NugetOrgSource, "NuGetType", 0, It.IsAny <CancellationToken>())) .Returns(CreateSearchResult("NuGetPackage", "NuGetType", CreateNameParts("NS1", "NS2"))); var data = new FixProviderData(installerServiceMock.Object, packageServiceMock.Object); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", string.Format(FeaturesResources.Use_local_version_0, "1.0"), parameters : new TestParameters(fixProviderData: data)); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", string.Format(FeaturesResources.Use_local_version_0, "2.0"), index : 1, parameters : new TestParameters(fixProviderData: data)); await TestSmartTagTextAsync( @"class C { [|NuGetType|] n; }", FeaturesResources.Find_and_install_latest_version, index : 2, parameters : new TestParameters(fixProviderData: data)); }
public async Task TestOptionsOffered() { // Make a loose mock for the installer service. We don't care what this test // calls on it. var installerServiceMock = new Mock<IPackageInstallerService>(MockBehavior.Loose); installerServiceMock.SetupGet(i => i.IsEnabled).Returns(true); installerServiceMock.SetupGet(i => i.PackageSources).Returns(NugetPackageSources); installerServiceMock.Setup(s => s.GetInstalledVersions("NuGetPackage")) .Returns(new[] { "1.0", "2.0" }); var packageServiceMock = new Mock<ISymbolSearchService>(); packageServiceMock.Setup(s => s.FindPackagesWithType( NugetOrgSource, "NuGetType", 0, It.IsAny<CancellationToken>())) .Returns(CreateSearchResult("NuGetPackage", "NuGetType", CreateNameParts("NS1", "NS2"))); var data = new FixProviderData(installerServiceMock.Object, packageServiceMock.Object); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Use local version '1.0'", index: 0, fixProviderData: data); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Use local version '2.0'", index: 1, fixProviderData: data); await TestSmartTagTextAsync( @" class C { [|NuGetType|] n; }", "Find and install latest version", index: 2, fixProviderData: data); }