public void RunWithExecutionTimeGreaterThanTimeout(string language, string functionFileName, string moduleName, string functionHandler, int durationTime, int timeout) { // Arrange IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler, timeout); Event @event = new Event(durationTime); Context context = new Context(); //Assert Assert.ThrowsAsync <OperationCanceledException>(async() => await invoker.Execute(@event, context)); }
public async void InvokeRegularFunction(string language, string functionName, string moduleName, string functionHandler) { // Arrange var invoker = InvokerFactory.GetFunctionInvoker(language, functionName, moduleName, functionHandler); var @event = new Event(); var context = new Context(); // Act var result = await invoker.Execute(@event, context); }
public void InvokeRegularFunction(string language, string functionFileName, string moduleName, string functionHandler) { // Arrange IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler); Event @event = new Event(); Context context = new Context(); CancellationTokenSource token = new CancellationTokenSource(); // Act object result = invoker.Execute(token, @event, context); // Assert }
public async void RunWithoutTimeout(string language, string functionFileName, string moduleName, string functionHandler, int durationTime, int timeout) { // Arrange IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler, timeout); Event @event = new Event(durationTime); Context context = new Context(); // Act object result = await invoker.Execute(@event, context); // Assert Assert.Equal("This is a long run!", result.ToString()); }
public async void InvokeRegularFunctionWithData(string language, string functionName, string moduleName, string functionHandler) { // Arrange var inputData = "expected returned message"; var invoker = InvokerFactory.GetFunctionInvoker(language, functionName, moduleName, functionHandler); var @event = new Event(inputData); var context = new Context(); // Act object result = await invoker.Execute(@event, context); // Assert Assert.Equal(inputData, result.ToString()); }
public async Task AddEndpoints_AttributeRouted_UsesActionInvoker() { // Arrange var values = new { action = "Test", controller = "Test", page = (string)null, }; var action = CreateActionDescriptor(values, pattern: "/Test"); var endpointFeature = new EndpointSelectorContext { RouteValues = new RouteValueDictionary() }; var featureCollection = new FeatureCollection(); featureCollection.Set <IEndpointFeature>(endpointFeature); featureCollection.Set <IRouteValuesFeature>(endpointFeature); featureCollection.Set <IRoutingFeature>(endpointFeature); var httpContextMock = new Mock <HttpContext>(); httpContextMock.Setup(m => m.Features).Returns(featureCollection); var actionInvokerCalled = false; var actionInvokerMock = new Mock <IActionInvoker>(); actionInvokerMock.Setup(m => m.InvokeAsync()).Returns(() => { actionInvokerCalled = true; return(Task.CompletedTask); }); InvokerFactory .Setup(m => m.CreateInvoker(It.IsAny <ActionContext>())) .Returns(actionInvokerMock.Object); // Act var endpoint = CreateAttributeRoutedEndpoint(action); // Assert await endpoint.RequestDelegate(httpContextMock.Object); Assert.True(actionInvokerCalled); }
public void InvokeRegularFunctionWithData(string language, string functionFileName, string moduleName, string functionHandler) { // Arrange string inputData = "expected returned message"; IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler); Event @event = new Event(inputData); Context context = new Context(); CancellationTokenSource token = new CancellationTokenSource(); // Act object result = invoker.Execute(token, @event, context); // Assert Assert.Equal(inputData, result.ToString()); }
public void RunWithoutTimeout(string language, string functionFileName, string moduleName, string functionHandler, int durationTime, int timeoutSeconds) { // Arrange int sleepTime = durationTime; int timeout = timeoutSeconds * 1000; IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler, timeout); Event @event = new Event(sleepTime); Context context = new Context(); CancellationTokenSource token = new CancellationTokenSource(); // Act object result = invoker.Execute(token, @event, context); // Assert Assert.Equal("This is a long run!", result.ToString()); }
public void RunWithExecutionTimeGreaterThanTimeout(string language, string functionFileName, string moduleName, string functionHandler, int durationTime, int timeoutSeconds) { // Arrange int sleepTime = durationTime * 1000; int timeout = timeoutSeconds * 1000; IInvoker invoker = InvokerFactory.GetFunctionInvoker(language, functionFileName, moduleName, functionHandler, timeout); Event @event = new Event(sleepTime); Context context = new Context(); CancellationTokenSource token = new CancellationTokenSource(); // Act Action timeoutAction = () => { object result = invoker.Execute(token, @event, context); }; //Assert Assert.Throws <OperationCanceledException>(timeoutAction); }