コード例 #1
0
        public void AlternativeToolPathsThrowsWhenRegistryItemDoesNotExist(
            IISExpressSettingsTestImpl dummySettings,
            [Frozen] IRegistry registry,
            IISExpressRunnerTestImpl sut)
        {
            registry.LocalMachine.OpenKey(@"SOFTWARE\Microsoft\IISExpress")
            .Returns(null as IRegistryKey);

            sut.Invoking(_ => _.Access_GetAlternativeToolPaths(dummySettings).ToArray())
            .ShouldThrow <CakeException>()
            .WithMessage("IIS Express is not installed on this machine.");
        }
コード例 #2
0
        public void AlternativeToolPathsShouldComeFromRegistry(
            IISExpressSettingsTestImpl dummySettings,
            [Frozen] IRegistry registry,
            IISExpressRunnerTestImpl sut)
        {
            registry.LocalMachine.OpenKey(@"SOFTWARE\Microsoft\IISExpress")
            .GetSubKeyNames()
            .Returns(new[] { "8.0", "10.0" });
            registry.LocalMachine.OpenKey(@"SOFTWARE\Microsoft\IISExpress")
            .OpenKey("10.0")
            .GetValue("InstallPath")
            .Returns("MyIISExpressInstallPath");

            var result = sut.Access_GetAlternativeToolPaths(dummySettings);

            result.Should()
            .HaveCount(1)
            .And.ContainSingle(
                r =>
                r.FullPath.Equals(@"MyIISExpressInstallPath/IISExpress.exe",
                                  StringComparison.OrdinalIgnoreCase));
        }
コード例 #3
0
        public void ToolNameIsIISExpress(IISExpressRunnerTestImpl sut)
        {
            var result = sut.Access_GetToolName();

            result.Should().Be("IISExpress");
        }
コード例 #4
0
        public void GetToolExecutableNamesReturnsEmpty(IISExpressRunnerTestImpl sut)
        {
            var result = sut.Access_GetToolExecutableNames();

            result.Should().BeEmpty();
        }