示例#1
0
        public void GetNuGetFallbackFolderPath_ReturnsCorrectFallbackPath()
        {
            var fileSystem = new MockFileSystem();

            fileSystem.Directory
            .CreateDirectory(XFS.Path(@"c:\dotnet\sdk\NuGetFallbackFolder"));

            var dotnetCommandService = new Mock <IDotnetCommandService>();

            dotnetCommandService
            .Setup(m => m.Run("--list-sdks"))
            .Returns(new DotnetCommandResult
            {
                ExitCode = 0,
                StdOut   = @"2.2.402 [" + XFS.Path(@"c:\dotnet\sdk") + "]"
            });

            var dotnetUtilsService = new DotnetUtilsService(
                fileSystem, dotnetCommandService.Object);

            // act
            var fallbackPath = dotnetUtilsService.GetNuGetFallbackFolderPath();

            Assert.Equal(
                XFS.Path(@"c:\dotnet\sdk\NuGetFallbackFolder"),
                fallbackPath.Result);
        }
示例#2
0
        public void GetPackageCachePaths_ReturnsGlobalCacheWithoutFallbackCachePath()
        {
            var fileSystem = new MockFileSystem();

            var dotnetCommandService = new Mock <IDotnetCommandService>();

            dotnetCommandService
            .Setup(m => m.Run("--list-sdks"))
            .Returns(new DotnetCommandResult
            {
                ExitCode = 0,
                StdOut   = @"2.2.402 [" + XFS.Path(@"c:\dotnet\sdk") + "]"
            });
            dotnetCommandService
            .Setup(m => m.Run("nuget locals global-packages --list"))
            .Returns(new DotnetCommandResult
            {
                ExitCode = 0,
                StdOut   = @"info : global-packages: " + XFS.Path(@"c:\user\.nuget\packages")
            });

            var dotnetUtilsService = new DotnetUtilsService(
                fileSystem, dotnetCommandService.Object);

            // act
            var cachePaths = dotnetUtilsService.GetPackageCachePaths();

            Assert.Collection(
                cachePaths.Result,
                path => Assert.Equal(XFS.Path(@"c:\user\.nuget\packages"), path));
        }
示例#3
0
        public void GetGlobalPackagesCacheLocation_ReturnsCorrectCachePath()
        {
            var dotnetCommandService = new Mock <IDotnetCommandService>();

            dotnetCommandService
            .Setup(m => m.Run("nuget locals global-packages --list"))
            .Returns(new DotnetCommandResult
            {
                ExitCode = 0,
                StdOut   = @"info : global-packages: " + XFS.Path(@"c:\user\.nuget\packages")
            });

            var dotnetUtilsService = new DotnetUtilsService(
                new MockFileSystem(), dotnetCommandService.Object);

            // act
            var fallbackPath = dotnetUtilsService.GetGlobalPackagesCacheLocation();

            Assert.Equal(
                XFS.Path(@"c:\user\.nuget\packages"),
                fallbackPath.Result);
        }
示例#4
0
        public void GetNuGetFallbackFolderPath_ReturnsNullFallbackPath()
        {
            var fileSystem = new MockFileSystem();

            var dotnetCommandService = new Mock <IDotnetCommandService>();

            dotnetCommandService
            .Setup(m => m.Run("--list-sdks"))
            .Returns(new DotnetCommandResult
            {
                ExitCode = 0,
                StdOut   = @"2.2.402 [" + XFS.Path(@"c:\dotnet\sdk") + "]"
            });

            var dotnetUtilsService = new DotnetUtilsService(
                fileSystem, dotnetCommandService.Object);

            // act
            var fallbackPath = dotnetUtilsService.GetNuGetFallbackFolderPath();

            Assert.True(fallbackPath.Success);
            Assert.Null(fallbackPath.Result);
        }