public void ShouldGetFlightPlan() { using (var mock = AutoMock.GetLoose()) { FlightPlan flightPlan = new FlightPlan() { company_name = "sd" }; Task <FlightPlan> task1 = Task <FlightPlan> .FromResult(flightPlan); var x = new Mock <IFlightPlanManager>(); x.Setup(x => x.GetFlightPlanByID("123")).Returns(task1); var controller = new FlightPlanController(x.Object); var actionResult = controller.GetFlightPlanById("123").Result; Microsoft.AspNetCore.Mvc.OkObjectResult okObjectResult = (Microsoft.AspNetCore.Mvc.OkObjectResult)actionResult; var temp = okObjectResult.Value; FlightPlan actual = (FlightPlan)temp; var expected = new FlightPlan() { company_name = "sd" }; Assert.True(actual != null); Assert.Equal(expected.company_name, actual.company_name); } }
public void WrongFligthID() { // Arrange var mockFactory = new Mock <IHttpClientFactory>(); var clientHandlerStub = new DelegatingHandlerStub(); var client = new HttpClient(clientHandlerStub); mockFactory.Setup(_ => _.CreateClient(It.IsAny <string>())).Returns(client); IHttpClientFactory factory = mockFactory.Object; IMemoryCache memoryCache = new MemoryCache(new MemoryCacheOptions()); Mock <IMemoryCache> cache = new Mock <IMemoryCache>(); var myContext = new Mock <HttpContext>(); FlightPlanController controller = new FlightPlanController(memoryCache, factory); // Act Task <ActionResult <FlightPlan> > flightPlan = controller.GetFlightPlanById("dfasd3"); // Assert Assert.IsNull(flightPlan.Result.Value); }
public void GetFlightPlan() { // Arrange var mockFactory = new Mock <IHttpClientFactory>(); var clientHandlerStub = new DelegatingHandlerStub(); var client = new HttpClient(clientHandlerStub); mockFactory.Setup(_ => _.CreateClient(It.IsAny <string>())).Returns(client); IHttpClientFactory factory = mockFactory.Object; IMemoryCache memoryCache = new MemoryCache(new MemoryCacheOptions()); Mock <IMemoryCache> cache = new Mock <IMemoryCache>(); var myContext = new Mock <HttpContext>(); DateTime now = DateTime.Now; FlightPlan flightPlan = new FlightPlan(); flightPlan.company_name = "swiss"; flightPlan.passengers = 200; flightPlan.initial_location = new InitialLocation(); flightPlan.initial_location.date_time = DateTime.Now; flightPlan.segments = new List <Segments>(); flightPlan.segments.Add(new Segments()); flightPlan.segments[0].timespan_seconds = 100; var json = JsonConvert.SerializeObject(flightPlan); var byteArray = Encoding.ASCII.GetBytes(json); MemoryStream stream = new MemoryStream(byteArray); stream.Flush(); stream.Position = 0; myContext.SetupGet(x => x.Request.Body).Returns(stream); var controllerContext = new ControllerContext() { HttpContext = myContext.Object, }; FlightPlanController controller = new FlightPlanController(memoryCache, factory) { ControllerContext = controllerContext, }; // Act controller.AddFlightPlan(flightPlan); // Arrange myContext = new Mock <HttpContext>(); myContext.SetupGet(x => x.Request.QueryString). Returns(new QueryString("?relative_to=" + DateTime.Now)); controllerContext = new ControllerContext() { HttpContext = myContext.Object, }; controller = new FlightPlanController(memoryCache, factory) { ControllerContext = controllerContext, }; //Act var list = controller.GetFlightsByDateAsync(DateTime.Now); // Assert Assert.IsTrue(list.Result.Value.Count == 1); // Act Task <ActionResult <FlightPlan> > answer = controller.GetFlightPlanById(list.Result.Value[0].flight_id); // Assert Assert.AreEqual(answer.Result.Value, flightPlan); // Act controller.DeleteFlight(list.Result.Value[0].flight_id); list = controller.GetFlightsByDateAsync(DateTime.Now); // Assert Assert.IsTrue(list.Result.Value.Count == 0); }