Esempio n. 1
0
        public void Does_not_throw_for_missing_tool()
        {
            using (var directory = DisposableDirectory.Create())
            {
                var temp     = directory.Directory;
                var strategy = new LocalToolInstallingPackageDiscoveryStrategy(temp);

                strategy.Invoking(s => s.Locate(new PackageDescriptor("not-a-workspace")).Wait()).Should().NotThrow();
            }
        }
Esempio n. 2
0
        public async Task Installs_tool_from_package_source_when_requested()
        {
            var console = new TestConsole();
            var asset   = await LocalToolHelpers.CreateTool(console);

            var strategy = new LocalToolInstallingPackageDiscoveryStrategy(asset, new PackageSource(asset.FullName));
            var package  = await strategy.Locate(new PackageDescriptor("blazor-console"));

            package.Should().NotBeNull();
        }
Esempio n. 3
0
File: Create.cs Progetto: rlundy/try
        public static async Task <Package> InstalledPackageWithBlazorEnabled([CallerMemberName] string testName = null)
        {
            var(packageName, addSource) = await NupkgWithBlazorEnabled(testName);

            var destination = Package.DefaultPackagesDirectory;
            await InstallCommand.Do(new InstallOptions(addSource, packageName, destination), new TestConsole());

            var strategy = new LocalToolInstallingPackageDiscoveryStrategy(destination);
            var builder  = await strategy.Locate(new PackageDescriptor(packageName));

            return((Package)builder.GetPackage());
        }
        public async Task Discover_tool_from_directory()
        {
            using (var directory = DisposableDirectory.Create())
            {
                var console = new TestConsole();
                var temp    = directory.Directory;
                var asset   = (await Create.ConsoleWorkspaceCopy()).Directory;
                await PackCommand.Do(new PackOptions(asset, outputDirectory : temp, enableWasm : false), console);

                var result = await Tools.CommandLine.Execute("dotnet", $"tool install --add-source {temp.FullName} console --tool-path {temp.FullName}");

                output.WriteLine(string.Join("\n", result.Error));
                result.ExitCode.Should().Be(0);

                var strategy = new LocalToolInstallingPackageDiscoveryStrategy(temp);
                var tool     = await strategy.Locate(new PackageDescriptor("console"));

                tool.Should().NotBeNull();
            }
        }
        public async Task Discover_tool_from_directory()
        {
            using (var directory = DisposableDirectory.Create())
            {
                var console = new TestConsole();
                var temp    = directory.Directory;
                var package = await Create.ConsoleWorkspaceCopy();

                File.Move(package.Directory.GetFiles("*.csproj").First().FullName, Path.Combine(package.Directory.FullName, "not-console.csproj"));
                await PackCommand.Do(new PackOptions(package.Directory, outputDirectory : temp, enableWasm : false), console);

                var result = await Microsoft.DotNet.Interactive.Utility.CommandLine.Execute("dotnet", $"tool install --add-source {temp.FullName} not-console --tool-path {temp.FullName}");

                output.WriteLine(string.Join("\n", result.Error));
                result.ExitCode.Should().Be(0);

                var strategy = new LocalToolInstallingPackageDiscoveryStrategy(temp);
                var tool     = await strategy.Locate(new PackageDescriptor("not-console"));

                tool.Should().NotBeNull();
            }
        }