public void GetNumberOfRoutesBetweenTownsByDistance_NoRoute() { var townServiceMock = new Mock <ITownService>(); townServiceMock.Setup(x => x.GenerateTownMapByRoutes(It.IsAny <List <Route> >())).Returns(_testTowns); var routeServiceMock = new Mock <IRouteService>(); routeServiceMock.Setup(x => x.GetNumberOfRoutesBetweenTownsByDistance(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <TownMap>(), It.IsAny <double>(), It.IsAny <LimitType>())).Throws(new ArgumentException("No such route")); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); var payload = new GetNumberOfRoutesBetweenTownsByDistanceResponse { routes = _testRoutes, startTownId = "A", destinationTownId = "A", distance = 30, limitType = LimitType.MaxOrEqual }; var result = trainsController.GetNumberOfRoutesBetweenTownsByDistance(payload) as NotFoundObjectResult; Assert.IsInstanceOf <NotFoundObjectResult>(result); Assert.AreEqual("No such route", result.Value); }
public void GetNumberOfRoutesBetweenTownsByDistance_Success() { var townServiceMock = new Mock <ITownService>(); townServiceMock.Setup(x => x.GenerateTownMapByRoutes(It.IsAny <List <Route> >())).Returns(_testTowns); var routeServiceMock = new Mock <IRouteService>(); routeServiceMock.Setup(x => x.GetNumberOfRoutesBetweenTownsByDistance(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <TownMap>(), It.IsAny <double>(), It.IsAny <LimitType>())).Returns(5); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); var payload = new GetNumberOfRoutesBetweenTownsByDistanceResponse { routes = _testRoutes, startTownId = "A", destinationTownId = "A", distance = 30, limitType = LimitType.MaxOrEqual }; var result = trainsController.GetNumberOfRoutesBetweenTownsByDistance(payload) as OkObjectResult; Assert.IsInstanceOf <OkObjectResult>(result); Assert.IsInstanceOf <GetNumberOfRoutesBetweenTownsByDistanceResponse>(result.Value); Assert.AreEqual(5, (result.Value as GetNumberOfRoutesBetweenTownsByDistanceResponse).numberOfStops); }
public void GetRouteDistance_BadRequest() { var townServiceMock = new Mock <ITownService>(); var routeServiceMock = new Mock <IRouteService>(); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); Assert.IsInstanceOf <BadRequestObjectResult>(trainsController.GetRouteDistance(new GetRouteDistanceResponse())); }
public void GetNumberOfRoutesBetweenTownsByStop_BadRequest() { var townServiceMock = new Mock <ITownService>(); var routeServiceMock = new Mock <IRouteService>(); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); Assert.IsInstanceOf <BadRequestObjectResult>(trainsController.GetNumberOfRoutesBetweenTownsByStop(new GetNumberOfRoutesBetweenTownsByStopResponse())); }
public void GetRouteDistance_NoRoute() { var townServiceMock = new Mock <ITownService>(); townServiceMock.Setup(x => x.GenerateTownMapByRoutes(It.IsAny <List <Route> >())).Returns(_testTowns); var routeServiceMock = new Mock <IRouteService>(); routeServiceMock.Setup(x => x.GetRouteDistance(It.IsAny <string>(), It.IsAny <TownMap>())).Throws(new ArgumentException("No such route")); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); var payload = new GetRouteDistanceResponse { routes = _testRoutes, route = "A-A-A" }; var result = trainsController.GetRouteDistance(payload) as NotFoundObjectResult; Assert.IsInstanceOf <NotFoundObjectResult>(result); Assert.AreEqual("No such route", result.Value); }
public void GetRouteDistance_Success() { var townServiceMock = new Mock <ITownService>(); townServiceMock.Setup(x => x.GenerateTownMapByRoutes(It.IsAny <List <Route> >())).Returns(_testTowns); var routeServiceMock = new Mock <IRouteService>(); routeServiceMock.Setup(x => x.GetRouteDistance(It.IsAny <string>(), It.IsAny <TownMap>())).Returns(5); TrainsController trainsController = new TrainsController(townServiceMock.Object, routeServiceMock.Object); var payload = new GetRouteDistanceResponse { routes = _testRoutes, route = "A-A-A" }; var result = trainsController.GetRouteDistance(payload) as OkObjectResult; Assert.IsInstanceOf <OkObjectResult>(result); Assert.IsInstanceOf <GetRouteDistanceResponse>(result.Value); Assert.AreEqual(5, (result.Value as GetRouteDistanceResponse).distance); }