public void RefreshMiddlewareTests_MiddlewareConstructorRetrievesMultipleIConfigurationRefreshers() { // Arrange IConfigurationRefresher[] refreshers = { new AzureAppConfigurationRefresher(), new AzureAppConfigurationRefresher() }; var mockRefresherProvider = new Mock <IConfigurationRefresherProvider>(MockBehavior.Strict); mockRefresherProvider.SetupGet(provider => provider.Refreshers).Returns(refreshers); var delegateMock = new Mock <RequestDelegate>(); // Act var middleware = new AzureAppConfigurationRefreshMiddleware(delegateMock.Object, mockRefresherProvider.Object); // Assert Assert.NotNull(middleware.Refreshers); Assert.Equal(2, middleware.Refreshers.Count()); }
public void RefreshMiddlewareTests_MiddlewareConstructorParsesIConfigurationRefresher() { // Arrange var mockResponse = new Mock <Response>(); var mockClient = new Mock <ConfigurationClient>(MockBehavior.Strict, CreateMockEndpointString()); mockClient.Setup(c => c.GetConfigurationSettingsAsync(It.IsAny <SettingSelector>(), It.IsAny <CancellationToken>())) .Returns(new MockAsyncPageable(_kvCollection)); var delegateMock = new Mock <RequestDelegate>(); var configuration = new ConfigurationBuilder() .AddAzureAppConfiguration(options => options.Client = mockClient.Object) .Build(); // Act var middleware = new AzureAppConfigurationRefreshMiddleware(delegateMock.Object, configuration); // Assert Assert.NotNull(middleware.Refreshers); Assert.Equal(1, middleware.Refreshers.Count); }
public void RefreshMiddlewareTests_MiddlewareConstructorRetrievesMultipleIConfigurationRefreshers() { // Arrange var mockRefresher = new Mock <IConfigurationRefresher>(MockBehavior.Strict); mockRefresher.Setup(provider => provider.TryRefreshAsync(It.IsAny <CancellationToken>())).ReturnsAsync(true); var mockRefresherProvider = new Mock <IConfigurationRefresherProvider>(MockBehavior.Strict); mockRefresherProvider.SetupGet(provider => provider.Refreshers).Returns(new IConfigurationRefresher[] { mockRefresher.Object, mockRefresher.Object }); var mockContext = new Mock <FunctionContext>(); var mockFunctionExecutionDelegate = new Mock <FunctionExecutionDelegate>(); // Act var middleware = new AzureAppConfigurationRefreshMiddleware(mockRefresherProvider.Object); _ = middleware.Invoke(mockContext.Object, mockFunctionExecutionDelegate.Object); // Assert mockRefresher.Verify(refresher => refresher.TryRefreshAsync(It.IsAny <CancellationToken>()), Times.Exactly(2)); }