Example #1
0
            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);
            }
Example #2
0
        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));
        }
Example #3
0
        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));
        }
Example #4
0
            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);
            }