예제 #1
0
        public void GetNonexistentTrailer()
        {
            //Mock context
            Mock <FortuneDbContext> mockContext = new Mock <FortuneDbContext>();

            //Mock repos
            Mock <IRepo <Location> > mockLocationRepo = new Mock <IRepo <Location> >();
            Mock <IRepo <Trailer> >  mockTrailerRepo  = new Mock <IRepo <Trailer> >();
            Mock <IRepo <Load> >     mockLoadRepo     = new Mock <IRepo <Load> >();

            //Test id
            int testId = 111111;

            //Mock call
            mockTrailerRepo.Setup(x => x.Get(testId)).Returns <Trailer>(null);

            //Unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.LocationRepo).Returns(mockLocationRepo.Object);
            mockUnitOfWork.SetupGet(x => x.TrailerRepo).Returns(mockTrailerRepo.Object);

            //Trailer service
            ITrailerService trailerService = new TrailerService(mockUnitOfWork.Object);

            //Test
            TrailerDto dto = trailerService.Get(testId);
        }
예제 #2
0
        public void GetTrailer()
        {
            //Automapper
            AutoMapperConfig.RegisterMappings();

            //Mock context
            Mock <FortuneDbContext> mockContext = new Mock <FortuneDbContext>();

            //Mock repos
            Mock <IRepo <Location> > mockLocationRepo = new Mock <IRepo <Location> >();
            Mock <IRepo <Trailer> >  mockTrailerRepo  = new Mock <IRepo <Trailer> >();

            //Test location
            Location testLocation = new Location
            {
                Id      = Guid.NewGuid(),
                Deleted = false,
                Name    = "TEST"
            };

            //Test trailer
            Trailer testTrailer = new Trailer
            {
                Id         = 111111,
                Deleted    = false,
                LocationId = testLocation.Id
            };
            TrailerDto testDto = Mapper.Map <TrailerDto>(testTrailer);

            testDto.Location = Mapper.Map <LocationDto>(testLocation);

            //Mock call
            mockTrailerRepo.Setup(x => x.Get(testTrailer.Id)).Returns(testTrailer);
            mockLocationRepo.Setup(x => x.Get(It.Is <Guid>(y => y == testLocation.Id))).Returns(testLocation);

            //Unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.LocationRepo).Returns(mockLocationRepo.Object);
            mockUnitOfWork.SetupGet(x => x.TrailerRepo).Returns(mockTrailerRepo.Object);

            //Trailer service
            ITrailerService trailerService = new TrailerService(mockUnitOfWork.Object);

            //Test
            TrailerDto dto = trailerService.Get(testTrailer.Id);

            TestUtil.Compare(testDto, dto);
        }
예제 #3
0
        public void GetTrailersWithDeleted()
        {
            //Automapper
            AutoMapperConfig.RegisterMappings();

            //Mock context
            Mock <FortuneDbContext> mockContext = new Mock <FortuneDbContext>();

            //Mock repos
            Mock <IRepo <Location> > mockLocationRepo = new Mock <IRepo <Location> >();
            Mock <IRepo <Trailer> >  mockTrailerRepo  = new Mock <IRepo <Trailer> >();
            Mock <IRepo <Load> >     mockLoadRepo     = new Mock <IRepo <Load> >();

            //Test location
            Location testLocation = new Location
            {
                Id      = Guid.NewGuid(),
                Deleted = false,
                Name    = "TEST"
            };

            //Test trailers
            IEnumerable <Trailer> testTrailers = new List <Trailer>
            {
                new Trailer {
                    Id         = 111111,
                    Deleted    = false,
                    LocationId = testLocation.Id
                },
                new Trailer {
                    Id         = 222222,
                    Deleted    = true,
                    LocationId = testLocation.Id
                }
            };

            TrailerDto[] testDtos = Mapper.Map <TrailerDto[]>(testTrailers);
            foreach (TrailerDto testDto in testDtos)
            {
                testDto.Location = Mapper.Map <LocationDto>(testLocation);
            }

            //Mock call
            mockTrailerRepo.Setup(x => x.Get(
                                      It.IsAny <Expression <Func <Trailer, bool> > >(),
                                      -1,
                                      -1,
                                      It.IsAny <Func <IQueryable <Trailer>, IOrderedQueryable <Trailer> > >(),
                                      ""
                                      )).Returns(testTrailers);
            mockLocationRepo.Setup(x => x.Get(It.Is <Guid>(y => y == testLocation.Id))).Returns(testLocation);

            //Unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.LocationRepo).Returns(mockLocationRepo.Object);
            mockUnitOfWork.SetupGet(x => x.TrailerRepo).Returns(mockTrailerRepo.Object);

            //Trailer service
            ITrailerService trailerService = new TrailerService(mockUnitOfWork.Object);

            //Test
            TrailerDto[] dtos = trailerService.Get(true);
            TestUtil.Compare(testDtos, dtos);
        }