public void GetRouteByCodeQuery_Ok()
        {
            //Arrenge
            string code = "test";

            GetRoutesByFromPointCodeQueryRequest request = new GetRoutesByFromPointCodeQueryRequest
            {
                PointFromCode = code
            };

            List <Route> returnMockSelect = new List <Route>()
            {
                new Route()
                {
                    PointFromCode = code
                },
                new Route()
                {
                    PointFromCode = code
                }
            };

            _routedataMock.Setup(p => p.GetRoutesByPointCodeFrom(It.IsIn(code)))
            .Returns(returnMockSelect);

            //Act
            IEnumerable <Route> routes = new GetRoutesByFromPointCodeQuery(_routedataMock.Object)
                                         .Execute(request);

            //Assert
            _routedataMock.Verify(p => p.GetRoutesByPointCodeFrom(It.IsIn(code)), Times.Once);

            Assert.AreEqual(2, routes.Count());
        }
Esempio n. 2
0
        public IEnumerable <Route> Execute(GetRoutesByFromPointCodeQueryRequest request)
        {
            IEnumerable <Route> routes = _routeData.GetRoutesByPointCodeFrom(request.PointFromCode);

            if (routes is null || routes.Count() <= 0)
            {
                throw new ResponseException(System.Net.HttpStatusCode.BadRequest, $"The routes does not exist");
            }

            return(routes);
        }
        public void GetRouteByCodeQuery_ReturnEmptyRoutes_ThrowRoutesNotExist()
        {
            //Arrenge
            string code = "test";

            GetRoutesByFromPointCodeQueryRequest request = new GetRoutesByFromPointCodeQueryRequest
            {
                PointFromCode = code
            };

            _routedataMock.Setup(p => p.GetRoutesByPointCodeFrom(It.IsIn(code)))
            .Returns(new List <Route>());

            //Act
            new GetRoutesByFromPointCodeQuery(_routedataMock.Object)
            .Execute(request);
        }