public async Task RpcInitializationService_Initializes_WorkerRuntime_NotSet_NoPlaceholder() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _loggerFactory); _rpcInitializationService.AddSupportedRuntime(LanguageWorkerConstants.NodeLanguageWorkerName); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.JavaLanguageWorkerName), Times.Never); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.NodeLanguageWorkerName), Times.Never); Assert.Contains("testserver", testRpcServer.Uri.ToString()); }
public async Task RpcInitializationService_LinuxAppService_Initializes_RpcServer() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); mockEnvironment.Setup(p => p.GetEnvironmentVariable(EnvironmentSettingNames.FunctionsLogsMountPath)).Returns(@"d:\test"); mockEnvironment.Setup(p => p.GetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteInstanceId)).Returns("1234"); _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _loggerFactory); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.JavaLanguageWorkerName), Times.Never); Assert.Contains("testserver", testRpcServer.Uri.ToString()); }
public async Task RpcInitializationService_Initializes_RpcServerAndChannels_PlaceHolderMode() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); mockEnvironment.Setup(p => p.GetEnvironmentVariable(EnvironmentSettingNames.AzureWebsitePlaceholderMode)).Returns("1"); mockEnvironment.Setup(p => p.GetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName)).Returns(string.Empty); _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _loggerFactory); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.JavaLanguageWorkerName), Times.Once); Assert.Contains("testserver", testRpcServer.Uri.ToString()); }
public async Task RpcInitializationService_Initializes_WorkerRuntime_Set() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); mockEnvironment.Setup(p => p.GetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName)).Returns(LanguageWorkerConstants.NodeLanguageWorkerName); _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _loggerFactory); _rpcInitializationService.AddSupportedRuntime(LanguageWorkerConstants.NodeLanguageWorkerName); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.NodeLanguageWorkerName), Times.Once); Assert.Contains("testserver", testRpcServer.Uri.ToString()); }
public async Task RpcInitializationService_LinuxConsumption_Initializes_RpcServer() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); mockEnvironment.Setup(p => p.GetEnvironmentVariable(EnvironmentSettingNames.ContainerName)).Returns("testContainer"); mockEnvironment.Setup(p => p.GetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName)).Returns("java"); _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _logger); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.JavaLanguageWorkerName), Times.Never); Assert.Contains("testserver", testRpcServer.Uri.ToString()); await testRpcServer.ShutdownAsync(); }
public async Task RpcInitializationService_AppOffline() { IRpcServer testRpcServer = new TestRpcServer(); var mockEnvironment = new Mock <IEnvironment>(); var offlineFilePath = TestHelpers.CreateOfflineFile(_rootPath); try { _rpcInitializationService = new RpcInitializationService(_optionsMonitor, mockEnvironment.Object, testRpcServer, _mockLanguageWorkerChannelManager.Object, _loggerFactory); await _rpcInitializationService.StartAsync(CancellationToken.None); _mockLanguageWorkerChannelManager.Verify(m => m.InitializeChannelAsync(LanguageWorkerConstants.JavaLanguageWorkerName), Times.Never); Assert.DoesNotContain("testserver", testRpcServer.Uri.ToString()); } finally { DeleteTestFile(offlineFilePath); } }
public LanguageWorkerProcessTests() { _eventManager = new Mock <IScriptEventManager>(); var workerProcessFactory = new Mock <IWorkerProcessFactory>(); var processRegistry = new Mock <IProcessRegistry>(); var rpcServer = new TestRpcServer(); var languageWorkerConsoleLogSource = new Mock <ILanguageWorkerConsoleLogSource>(); var scriptJobHostEnvironment = new Mock <IScriptJobHostEnvironment>(); var testEnv = new TestEnvironment(); _languageWorkerProcess = new LanguageWorkerProcess("node", "testworkerId", "testrootPath", rpcServer.Uri, null, _eventManager.Object, workerProcessFactory.Object, processRegistry.Object, new TestLogger("test"), languageWorkerConsoleLogSource.Object); }