public async Task Specialize_ResetsConfiguration() { var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance); await manager.SpecializeHostAsync(); _mockConfiguration.Verify(c => c.Reload()); }
public async Task Specialize_ResetsConfiguration() { var hostNameProvider = new HostNameProvider(_testEnvironment, _testLoggerFactory.CreateLogger <HostNameProvider>()); var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance, hostNameProvider, _mockApplicationLifetime.Object); await manager.SpecializeHostAsync(); _mockConfiguration.Verify(c => c.Reload()); }
public void SpecializeHost() { var mockScriptWebHostEnvironment = new Mock <IScriptWebHostEnvironment>(); Mock <IConfigurationRoot> mockConfiguration = new Mock <IConfigurationRoot>(); var mockEnvironment = new Mock <IEnvironment>(); Mock <ILanguageWorkerChannelManager> mockLanguageWorkerChannelManager = new Mock <ILanguageWorkerChannelManager>(); ILogger <StandbyManager> testLogger = new Logger <StandbyManager>(_loggerFactory); var manager = new StandbyManager(_hostService, mockLanguageWorkerChannelManager.Object, mockConfiguration.Object, mockScriptWebHostEnvironment.Object, mockEnvironment.Object, _monitor, testLogger); manager.SpecializeHostAsync().Wait(); }
public async Task Specialize_ResetsConfiguration() { TestMetricsLogger metricsLogger = new TestMetricsLogger(); var hostNameProvider = new HostNameProvider(_testEnvironment); var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance, hostNameProvider, _mockApplicationLifetime.Object, metricsLogger); await manager.SpecializeHostAsync(); // Ensure metrics are generated Assert.True(AreExpectedMetricsGenerated(metricsLogger)); _mockConfiguration.Verify(c => c.Reload()); }
public async Task Specialize_ReloadsEnvironmentVariables() { _testEnvironment.SetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName, LanguageWorkerConstants.JavaLanguageWorkerName); _mockLanguageWorkerChannelManager.Setup(m => m.SpecializeAsync()).Returns(async() => { _testEnvironment.SetEnvironmentVariable(_testSettingName, _testSettingValue); await Task.Yield(); }); _testEnvironment.SetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName, LanguageWorkerConstants.JavaLanguageWorkerName); var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance); await manager.SpecializeHostAsync(); Assert.Equal(_testSettingValue, _testEnvironment.GetEnvironmentVariable(_testSettingName)); }
public void SpecializeHost() { var mockScriptWebHostEnvironment = new Mock <IScriptWebHostEnvironment>(); Mock <IConfigurationRoot> mockConfiguration = new Mock <IConfigurationRoot>(); var mockEnvironment = new Mock <IEnvironment>(); Mock <IWebHostLanguageWorkerChannelManager> mockLanguageWorkerChannelManager = new Mock <IWebHostLanguageWorkerChannelManager>(); ILogger <StandbyManager> testLogger = new Logger <StandbyManager>(_loggerFactory); var loggerProvider = new TestLoggerProvider(); var loggerFactory = new LoggerFactory(); loggerFactory.AddProvider(loggerProvider); var hostNameProvider = new HostNameProvider(mockEnvironment.Object, loggerFactory.CreateLogger <HostNameProvider>()); var manager = new StandbyManager(_hostService, mockLanguageWorkerChannelManager.Object, mockConfiguration.Object, mockScriptWebHostEnvironment.Object, mockEnvironment.Object, _monitor, testLogger, hostNameProvider); manager.SpecializeHostAsync().Wait(); }
public async Task Specialize_ResetsHostNameProvider() { _testEnvironment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteHostName, "placeholder.azurewebsites.net"); var hostNameProvider = new HostNameProvider(_testEnvironment, _testLoggerFactory.CreateLogger <HostNameProvider>()); var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance, hostNameProvider, _mockApplicationLifetime.Object); Assert.Equal("placeholder.azurewebsites.net", hostNameProvider.Value); await manager.SpecializeHostAsync(); _testEnvironment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteHostName, "testapp.azurewebsites.net"); Assert.Equal("testapp.azurewebsites.net", hostNameProvider.Value); _mockConfiguration.Verify(c => c.Reload()); }
public void SpecializeHost() { var mockScriptWebHostEnvironment = new Mock <IScriptWebHostEnvironment>(); Mock <IConfigurationRoot> mockConfiguration = new Mock <IConfigurationRoot>(); var mockEnvironment = new Mock <IEnvironment>(); Mock <IWebHostRpcWorkerChannelManager> mockLanguageWorkerChannelManager = new Mock <IWebHostRpcWorkerChannelManager>(); ILogger <StandbyManager> testLogger = new Logger <StandbyManager>(_loggerFactory); var loggerProvider = new TestLoggerProvider(); var loggerFactory = new LoggerFactory(); loggerFactory.AddProvider(loggerProvider); var hostNameProvider = new HostNameProvider(mockEnvironment.Object); var mockApplicationLifetime = new Mock <Microsoft.AspNetCore.Hosting.IApplicationLifetime>(MockBehavior.Strict); var manager = new StandbyManager(_hostService, mockLanguageWorkerChannelManager.Object, mockConfiguration.Object, mockScriptWebHostEnvironment.Object, mockEnvironment.Object, _monitor, testLogger, hostNameProvider, mockApplicationLifetime.Object, new TestMetricsLogger()); manager.SpecializeHostAsync().Wait(); }
public async Task Specialize_ResetsConfiguration() { var mockHostManager = new Mock <IScriptHostManager>(); mockHostManager.Setup(m => m.State) .Returns(ScriptHostState.Running); var mockConfiguration = new Mock <IConfigurationRoot>(); var mockOptionsMonitor = new Mock <IOptionsMonitor <ScriptApplicationHostOptions> >(); var mockWebHostEnvironment = new Mock <IScriptWebHostEnvironment>(); var mockEnvironment = new TestEnvironment(); var manager = new StandbyManager(mockHostManager.Object, mockConfiguration.Object, mockWebHostEnvironment.Object, mockEnvironment, mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance); await manager.SpecializeHostAsync(); mockConfiguration.Verify(c => c.Reload()); }
public async Task Specialize_ReloadsEnvironmentVariables() { TestMetricsLogger metricsLogger = new TestMetricsLogger(); _testEnvironment.SetEnvironmentVariable(RpcWorkerConstants.FunctionWorkerRuntimeSettingName, RpcWorkerConstants.JavaLanguageWorkerName); _mockLanguageWorkerChannelManager.Setup(m => m.SpecializeAsync()).Returns(async() => { _testEnvironment.SetEnvironmentVariable(_testSettingName, _testSettingValue); await Task.Yield(); }); _testEnvironment.SetEnvironmentVariable(RpcWorkerConstants.FunctionWorkerRuntimeSettingName, RpcWorkerConstants.JavaLanguageWorkerName); var hostNameProvider = new HostNameProvider(_testEnvironment); var manager = new StandbyManager(_mockHostManager.Object, _mockLanguageWorkerChannelManager.Object, _mockConfiguration.Object, _mockWebHostEnvironment.Object, _testEnvironment, _mockOptionsMonitor.Object, NullLogger <StandbyManager> .Instance, hostNameProvider, _mockApplicationLifetime.Object, metricsLogger); await manager.SpecializeHostAsync(); // Ensure metrics are generated Assert.True(AreExpectedMetricsGenerated(metricsLogger)); Assert.Equal(_testSettingValue, _testEnvironment.GetEnvironmentVariable(_testSettingName)); }