public void WillThrowIfConfiguredSiteRootIsNotHttpOrHttps()
            {
                var configuration = new TestableConfigurationService();
                configuration.StubConfiguredSiteRoot = "ftp://theSiteRoot/";

                Assert.Throws<InvalidOperationException>(() => configuration.GetSiteRoot(useHttps: false));
            }
            public async Task WhenSettingIsNotEmptySecretInjectorIsRan()
            {
                // Arrange
                var secretInjectorMock = new Mock <ISecretInjector>();

                secretInjectorMock.Setup(x => x.InjectAsync(It.IsAny <string>()))
                .Returns <string>(s => Task.FromResult(s + "parsed"));

                var secretReaderFactory = new Mock <ISecretReaderFactory>();

                secretReaderFactory.Setup(x => x.CreateSecretReader(It.IsAny <IGalleryConfigurationService>()))
                .Returns(new EmptySecretReader());
                secretReaderFactory.Setup(x => x.CreateSecretInjector(It.IsAny <ISecretReader>()))
                .Returns(secretInjectorMock.Object);

                var configurationService = new TestableConfigurationService(secretReaderFactory.Object);

                configurationService.CloudSettingStub = "somevalue";

                // Act
                string result = await configurationService.ReadSetting("any");

                // Assert
                Assert.Equal("somevalueparsed", result);
            }
            public void WillThrowIfConfiguredSiteRootIsNotHttpOrHttps()
            {
                var configuration = new TestableConfigurationService();

                configuration.StubConfiguredSiteRoot = "ftp://theSiteRoot/";

                Assert.Throws <InvalidOperationException>(() => configuration.GetSiteRoot(useHttps: false));
            }
            public void WillUseHttpUponRequestWhenConfiguredSiteRootIsHttps()
            {
                var configuration = new TestableConfigurationService();
                configuration.StubConfiguredSiteRoot = "https://theSiteRoot/";

                var siteRoot = configuration.GetSiteRoot(useHttps: false);

                Assert.Equal("http://theSiteRoot/", siteRoot);
            }
            public void WillGetTheConfiguredHttpsSiteRoot()
            {
                var configuration = new TestableConfigurationService();
                configuration.StubConfiguredSiteRoot = "http://theSiteRoot/";

                var siteRoot = configuration.GetSiteRoot(useHttps: true);

                Assert.Equal("https://theSiteRoot/", siteRoot);
            }
            public void WillUseHttpUponRequestWhenConfiguredSiteRootIsHttps()
            {
                var configuration = new TestableConfigurationService();

                configuration.StubConfiguredSiteRoot = "https://theSiteRoot/";

                var siteRoot = configuration.GetSiteRoot(useHttps: false);

                Assert.Equal("http://theSiteRoot/", siteRoot);
            }
            public void WillGetTheConfiguredHttpsSiteRoot()
            {
                var configuration = new TestableConfigurationService();

                configuration.StubConfiguredSiteRoot = "http://theSiteRoot/";

                var siteRoot = configuration.GetSiteRoot(useHttps: true);

                Assert.Equal("https://theSiteRoot/", siteRoot);
            }
Exemple #8
0
            public void WillCacheTheSiteRootLookup()
            {
                var configuration = new TestableConfigurationService();

                configuration.GetSiteRoot(useHttps: false);

                configuration.GetSiteRoot(useHttps: true);

                configuration.StubRequest.Verify(stub => stub.IsLocal, Times.Once());
            }
            public void WillUseTheActualRootWhenTheRequestIsLocal()
            {
                var configuration = new TestableConfigurationService();
                configuration.StubRequest.Setup(stub => stub.IsLocal).Returns(true);
                configuration.StubRequest.Setup(stub => stub.Url).Returns(new Uri("http://theLocalSiteRoot/aPath"));

                var siteRoot = configuration.GetSiteRoot(useHttps: true);

                Assert.Equal("https://thelocalsiteroot/", siteRoot);
            }
Exemple #10
0
            public void WillUseTheActualRootWhenTheRequestIsLocal()
            {
                var configuration = new TestableConfigurationService();

                configuration.StubRequest.Setup(stub => stub.IsLocal).Returns(true);
                configuration.StubRequest.Setup(stub => stub.Url).Returns(new Uri("http://theLocalSiteRoot/aPath"));

                var siteRoot = configuration.GetSiteRoot(useHttps: true);

                Assert.Equal("https://thelocalsiteroot/", siteRoot);
            }
            public async Task WhenCloudSettingIsEmptyAppSettingIsReturned()
            {
                // Arrange
                var configurationService = new TestableConfigurationService();

                configurationService.CloudSettingStub     = null;
                configurationService.AppSettingStub       = string.Empty;
                configurationService.ConnectionStringStub = "abc";

                // Act
                string result = await configurationService.ReadSettingAsync("any");

                // Assert
                Assert.Equal(configurationService.ConnectionStringStub, result);
            }
            public async Task WhenCloudSettingIsNullStringNullIsReturned()
            {
                // Arrange
                var configurationService = new TestableConfigurationService();

                configurationService.CloudSettingStub     = "null";
                configurationService.AppSettingStub       = "bla";
                configurationService.ConnectionStringStub = "abc";

                // Act
                string result = await configurationService.ReadSettingAsync("any");

                // Assert
                Assert.Null(result);
            }
            public async Task GivenNotInjectedSettingNameSecretInjectorIsNotRan(string settingName)
            {
                // Arrange
                var secretInjectorMock = new Mock <ISecretInjector>();

                secretInjectorMock.Setup(x => x.InjectAsync(It.IsAny <string>()))
                .Returns <string>(s => Task.FromResult(s + "parsed"));

                var configurationService = new TestableConfigurationService(secretInjectorMock.Object);

                configurationService.CloudSettingStub = "somevalue";

                // Act
                string result = await configurationService.ReadSettingAsync(settingName);

                // Assert
                secretInjectorMock.Verify(x => x.InjectAsync(It.IsAny <string>()), Times.Never);
                Assert.Equal("somevalue", result);
            }
            public void WillCacheTheSiteRootLookup()
            {
                var configuration = new TestableConfigurationService();
                configuration.GetSiteRoot(useHttps: false);

                configuration.GetSiteRoot(useHttps: true);

                configuration.StubRequest.Verify(stub => stub.IsLocal, Times.Once());
            }
            public async Task WhenCloudSettingIsNullStringNullIsReturned()
            {
                // Arrange
                var configurationService = new TestableConfigurationService();
                configurationService.CloudSettingStub = "null";
                configurationService.AppSettingStub = "bla";
                configurationService.ConnectionStringStub = "abc";

                // Act 
                string result = await configurationService.ReadSetting("any");

                // Assert
                Assert. Null(result);
            }
            public async Task WhenSettingIsNotEmptySecretInjectorIsRan()
            {
                // Arrange
                var secretInjectorMock = new Mock<ISecretInjector>();
                secretInjectorMock.Setup(x => x.InjectAsync(It.IsAny<string>()))
                                  .Returns<string>(s => Task.FromResult(s + "parsed"));

                var secretReaderFactory = new Mock<ISecretReaderFactory>();
                secretReaderFactory.Setup(x => x.CreateSecretReader(It.IsAny<IGalleryConfigurationService>()))
                    .Returns(new EmptySecretReader());
                secretReaderFactory.Setup(x => x.CreateSecretInjector(It.IsAny<ISecretReader>()))
                    .Returns(secretInjectorMock.Object);

                var configurationService = new TestableConfigurationService(secretReaderFactory.Object);
                configurationService.CloudSettingStub = "somevalue";

                // Act 
                string result = await configurationService.ReadSetting("any");

                // Assert
                Assert.Equal("somevalueparsed", result);
            }
            public async Task WhenCloudSettingIsEmptyAppSettingIsReturned()
            {
                // Arrange
                var configurationService = new TestableConfigurationService();
                configurationService.CloudSettingStub = null;
                configurationService.AppSettingStub = string.Empty;
                configurationService.ConnectionStringStub = "abc";

                // Act 
                string result = await configurationService.ReadSetting("any");

                // Assert
                Assert.Equal(configurationService.ConnectionStringStub, result);
            }