Esempio n. 1
0
        public void GivenEnvironmentAndReporterItCanPrintOutInstructionToAddPath()
        {
            var fakeReporter       = new FakeReporter();
            var osxEnvironmentPath = new OSXEnvironmentPath(
                @"~/executable/path",
                @"/Users/name/executable/path",
                fakeReporter,
                new FakeEnvironmentProvider(
                    new Dictionary <string, string>
            {
                { "PATH", "" }
            }),
                FakeFile.Empty);

            osxEnvironmentPath.PrintAddPathInstructionIfPathDoesNotExist();

            // similar to https://code.visualstudio.com/docs/setup/mac
            fakeReporter.Message.Should().Be(
                $"Cannot find the tools executable path. Please ensure /Users/name/executable/path is added to your PATH.{Environment.NewLine}" +
                $"If you are using bash, You can do this by running the following command:{Environment.NewLine}{Environment.NewLine}" +
                $"cat << EOF >> ~/.bash_profile{Environment.NewLine}" +
                $"# Add .NET Core SDK tools{Environment.NewLine}" +
                $"export PATH=\"$PATH:/Users/name/executable/path\"{Environment.NewLine}" +
                $"EOF");
        }
        public void GivenEnvironmentAndReporterItPrintsNothingWhenenvironmentExists()
        {
            var fakeReporter         = new FakeReporter();
            var linuxEnvironmentPath = new LinuxEnvironmentPath(
                @"executable\path",
                fakeReporter,
                new FakeEnvironmentProvider(
                    new Dictionary <string, string>
            {
                { "PATH", @"executable\path" }
            }),
                FakeFile.Empty);

            linuxEnvironmentPath.PrintAddPathInstructionIfPathDoesNotExist();

            fakeReporter.Message.Should().BeEmpty();
        }
Esempio n. 3
0
        public void GivenEnvironmentAndReporterItPrintsNothingWhenenvironmentExists(string existingPath)
        {
            var fakeReporter       = new FakeReporter();
            var osxEnvironmentPath = new OSXEnvironmentPath(
                @"~/executable/path",
                @"/Users/name/executable/path",
                fakeReporter,
                new FakeEnvironmentProvider(
                    new Dictionary <string, string>
            {
                { "PATH", existingPath }
            }),
                FakeFile.Empty);

            osxEnvironmentPath.PrintAddPathInstructionIfPathDoesNotExist();

            fakeReporter.Message.Should().BeEmpty();
        }
        public void GivenAddPackageExecutablePathToUserPathJustRunItPrintsInstructionToLogout()
        {
            var fakeReporter         = new FakeReporter();
            var linuxEnvironmentPath = new LinuxEnvironmentPath(
                @"executable\path",
                fakeReporter,
                new FakeEnvironmentProvider(
                    new Dictionary <string, string>
            {
                { "PATH", @"" }
            }),
                FakeFile.Empty);

            linuxEnvironmentPath.AddPackageExecutablePathToUserPath();

            linuxEnvironmentPath.PrintAddPathInstructionIfPathDoesNotExist();

            fakeReporter.Message.Should().Be("Since you just installed the .NET Core SDK, you will need to logout or restart your session before running the tool you installed.");
        }