public async Task Given_TypeAndName_Run_Should_Return_Result() { var result = new { Hello = "World" }; var function = new Mock <IGitHubRepositoriesFunction>(); function.Setup(p => p.InvokeAsync <HttpRequest, object>(It.IsAny <HttpRequest>(), It.IsAny <FunctionOptionsBase>())).ReturnsAsync(result); var factory = new Mock <IFunctionFactory>(); factory.Setup(p => p.Create <IGitHubRepositoriesFunction>(It.IsAny <TraceWriter>(), It.IsAny <string>())).Returns(function.Object); CoreGitHubRepositoriesHttpTrigger.Factory = factory.Object; var query = new FakeQueryCollection(); query["type"] = "lorem"; query["name"] = "ipsum"; var req = new Mock <HttpRequest>(); req.SetupGet(p => p.Query).Returns(query); var log = new TraceMonitor(); var response = await CoreGitHubRepositoriesHttpTrigger.Run(req.Object, log).ConfigureAwait(false); response.Should().BeOfType <OkObjectResult>(); (response as OkObjectResult).Value.Should().Be(result); }
public async Task Given_Request_Run_Should_Return_Result() { var message = "hello world"; var result = new OkObjectResult(message); var function = new Mock <ISampleHttpFunction>(); function.Setup(p => p.InvokeAsync <HttpRequest, IActionResult>(It.IsAny <HttpRequest>(), It.IsAny <FunctionOptionsBase>())).ReturnsAsync(result); var factory = new Mock <IFunctionFactory>(); factory.Setup(p => p.Create <ISampleHttpFunction, ILogger>(It.IsAny <ILogger>())).Returns(function.Object); SampleHttpTrigger.Factory = factory.Object; var id = 1; var category = "heros"; var query = new FakeQueryCollection(); query["name"] = "ipsum"; var req = new Mock <HttpRequest>(); req.SetupGet(p => p.Query).Returns(query); var log = new Mock <ILogger>(); var response = await SampleHttpTrigger.GetSample(req.Object, id, category, log.Object).ConfigureAwait(false); response.Should().BeOfType <OkObjectResult>(); (response as OkObjectResult).Value.Should().Be(message); }
public void Create_EmptyQueryCollection_ModelCreatedWithoutRating() { using (var scope = _container.CreateScope()) { //Arrange var factory = scope.ServiceProvider.GetRequiredService <IFeedbackGetModelFactory>(); var queryCollection = new FakeQueryCollection(); //Act var model = factory.Create(queryCollection); //Assert Assert.False(model.Rating.HasValue); } }
public void Create_ValidInput_ModelCreatedWithRating() { using (var scope = _container.CreateScope()) { //Arrange var factory = scope.ServiceProvider.GetRequiredService <IFeedbackGetModelFactory>(); var queryCollection = new FakeQueryCollection { { FeedbackGetModelFactory.RatingQueryParamName, "3" } }; //Act var model = factory.Create(queryCollection); //Assert Assert.True(model.Rating.HasValue && model.Rating.Value == 3); } }