コード例 #1
0
ファイル: TripController.cs プロジェクト: mpabody/BuddySystem
        public IHttpActionResult GetAllTrips()
        {
            TripService tripService = CreateTripService();
            var         trips       = tripService.GetAllTrips();

            return(Ok(trips));
        }
コード例 #2
0
ファイル: TripController.cs プロジェクト: mpabody/BuddySystem
        public IHttpActionResult GetTrip(int id)
        {
            TripService tripService = CreateTripService();
            var         trip        = tripService.GetTripById(id);

            return(Ok(trip));
        }
コード例 #3
0
ファイル: TripServiceTest.cs プロジェクト: OSADP/archive
        public void SaveTrip_1TConnect_Passes()
        {
            using (IDbContext idtoFakeContext = new IDTOFakeContext())
                using (IUnitOfWork unitOfWork = new UnitOfWork(idtoFakeContext))
                {
                    Trip        tripEntity = TestData.GetTrip();
                    List <Step> steps      = TestData.GetSteps();//trips and steps get added in savetrip service call

                    TConnectOpportunity TConnOpp = TestData.GetTConnectOpportunity();
                    unitOfWork.Repository <TConnectOpportunity>().Insert(TConnOpp);

                    //TConnectOpportunity TConnOpp2 = new TConnectOpportunity();
                    //TConnOpp2.Id = 1;
                    //TConnOpp2.ModifiedBy = "Nunit";
                    //TConnOpp2.ModifiedDate = DateTime.UtcNow;
                    //TConnOpp2.CheckpointProviderId = 1;
                    //TConnOpp2.CheckpointStopCode = "2002";
                    //TConnOpp2.CheckpointRoute = "";
                    //TConnOpp2.TConnectProviderId = 1;
                    //TConnOpp2.TConnectStopCode = "8888";
                    //TConnOpp2.TConnectRoute = "426";
                    //unitOfWork.Repository<TConnectOpportunity>().Insert(TConnOpp2);

                    unitOfWork.Save();

                    ITripService tripService = new TripService(5);
                    int          id          = tripService.SaveTrip(tripEntity, steps, unitOfWork);

                    Assert.AreEqual(1, unitOfWork.Repository <TConnect>().Query().Get().Count());
                    Assert.AreEqual("Trip Created", unitOfWork.Repository <TripEvent>().Query().Get().First().Message);
                    Assert.AreEqual("T-Connect Created", unitOfWork.Repository <TripEvent>().Query().Get().Last().Message);
                }
        }
コード例 #4
0
ファイル: TripController.cs プロジェクト: mpabody/BuddySystem
        public IHttpActionResult GetTripsForCurrentUser()
        {
            TripService tripService = CreateTripService();
            var         trips       = tripService.GetTripsForCurrentUser();

            return(Ok(trips));
        }
コード例 #5
0
        public void CreateTripShouldThrowIfBookingIsInvalid()
        {
            var pickupLocation = new GeoCoordinate(12.99711, 77.61469);
            var booking        = new Domain.Booking(
                "1",
                "1234",
                "100",
                pickupLocation,
                new GeoCoordinate(13, 77),
                DateTime.Today.AddDays(-1),
                BookingStatus.Cancelled
                );

            var tripRepo             = new Mock <ITripRepository>();
            var cabLocationService   = new Mock <ICabLocationService>();
            var availableCabsService = new Mock <IAvailableCabsService>();
            var bookingService       = new Mock <IBookingService>();

            bookingService.Setup(b => b.GetBooking("1")).Returns(booking);

            var tripService      = new TripService(tripRepo.Object, availableCabsService.Object, bookingService.Object, cabLocationService.Object);
            var startTripRequest = new StartTripRequest()
            {
                BookingId     = booking.Id,
                StartLocation = pickupLocation,
                StartTime     = DateTime.Now
            };

            Assert.Throws <Exception>(() => tripService.StartTrip(startTripRequest));
        }
コード例 #6
0
 public ReportsController(TripService tripservice, DriverService driverService, VehicleService vehicleService, UserService userService, CorporateService corporateService)
 {
     if (tripservice == null)
     {
         throw new NullReferenceException("tripservice");
     }
     if (driverService == null)
     {
         throw new NullReferenceException("driverService");
     }
     if (vehicleService == null)
     {
         throw new NullReferenceException("vehicleService");
     }
     if (userService == null)
     {
         throw new NullReferenceException("userService");
     }
     if (corporateService == null)
     {
         throw new NullReferenceException("corporateService");
     }
     _corporateService = corporateService;
     _driverService    = driverService;
     _vehicleService   = vehicleService;
     _tripService      = tripservice;
     _userService      = userService;
 }
コード例 #7
0
ファイル: TripServiceTest.cs プロジェクト: klyow90/trains
        public void GetRoutes_WithMaxDistanceThreshold(char from, char to, int maxDistance, int expected)
        {
            var service = new TripService(TestData.Edges);
            var routes  = service.GetRoutes(from, to, maxDistance);

            Assert.AreEqual(expected, routes.Count);
        }
コード例 #8
0
ファイル: TripTests.cs プロジェクト: NikolayOliver/TestTask
 public void Initialize()
 {
     TripServiceHelper = new TripServiceHelper();
     TripService       = new TripService();
     FilePath          = FileHelper.tripsJson;
     JsonHelper        = new JsonHelper(FilePath);
 }
コード例 #9
0
ファイル: TripServiceTest.cs プロジェクト: klyow90/trains
        public void GetShortestRouteDistance(char from, char to, int max, int expected)
        {
            var service  = new TripService(TestData.Edges);
            var distance = service.GetShortestRouteDistance(from, to);

            Assert.AreEqual(expected, distance);
        }
コード例 #10
0
ファイル: TripServiceTest.cs プロジェクト: klyow90/trains
        public void GetRoutes_WithMaxOrExactMax(char from, char to, int max, bool isExactMax, int expected)
        {
            var service = new TripService(TestData.Edges);
            var routes  = service.GetRoutes(from, to, max, isExactMax);

            Assert.AreEqual(expected, routes.Count);
        }
コード例 #11
0
        public ActionResult Index()
        {
            var tripService = new TripService();
            var tripList    = tripService.GetTrips();

            return(View(tripList));
        }
コード例 #12
0
        public void ReturnFalse_WhenFoundTripIsNull()
        {
            // Arrange
            var mockedTripRepo          = new Mock <IProjectableRepositoryEf <Trip> >();
            var mockedUserTripRepo      = new Mock <IProjectableRepositoryEf <UsersTrips> >();
            var mockedCityService       = new Mock <ICityService>();
            var mockedTagService        = new Mock <ITagService>();
            var mockedDateTimpeProvider = new Mock <IDateTimeProvider>();
            var mockedMappingProvider   = new Mock <IMappingProvider>();
            var mockedUnitOfWork        = new Mock <IUnitOfWorkEF>();

            var tripService = new TripService(
                () => mockedUnitOfWork.Object,
                mockedUserTripRepo.Object,
                mockedCityService.Object,
                mockedMappingProvider.Object,
                mockedTagService.Object,
                mockedTripRepo.Object,
                mockedDateTimpeProvider.Object);

            int    tripId = 1;
            string userId = "driverId";

            UsersTrips userTrip = null;

            mockedUserTripRepo.Setup(x => x.GetFirst(It.IsAny <Expression <Func <UsersTrips, bool> > >()))
            .Returns(userTrip);

            // Act
            var result = tripService.SignOutOfTrip(tripId, userId);

            // Assert
            mockedUserTripRepo.Verify(x => x.Delete(It.IsAny <UsersTrips>()), Times.Never);
            Assert.False(result);
        }
コード例 #13
0
        private TripService CreateService()
        {
            var userID  = Guid.Parse(User.Identity.GetUserId());
            var service = new TripService(userID);

            return(service);
        }
コード例 #14
0
ファイル: Program.cs プロジェクト: klyow90/trains
        private static void PrintDifferentRoutes(List <Edge> edges, int number, char from, char to, int maxDistance)
        {
            var service = new TripService(edges);
            var routes  = service.GetRoutes(from, to, maxDistance);

            Print(number, routes.Count.ToString());
        }
コード例 #15
0
 public trip_service_should()
 {
     userSession = Substitute.For<IUserSession>();
     tripDAO = Substitute.For<ITripDAO>();
     productionTripService = new TripService(userSession, tripDAO);
     UserBuilder = new UserBuilder();
 }
コード例 #16
0
ファイル: Program.cs プロジェクト: klyow90/trains
        private static void PrintExactMaxStops(List <Edge> edges, int number, char from, char to, int maxDepth)
        {
            var service = new TripService(edges);
            var routes  = service.GetRoutes(from, to, maxDepth, true);

            Print(number, routes.Count.ToString());
        }
コード例 #17
0
        public async Task GetAllTripsAsync_SeededValidData_RecievedDataMatchesSeeded()
        {
            // Arrange.
            var tripEntitiesToSeed = TripEntitiesToSeed;

            Seed(TripFlipDbContext, tripEntitiesToSeed);
            TripService = new TripService(TripFlipDbContext, Mapper, CurrentUserService);

            var paginationDto = GetPaginationDto();

            // Act.
            var returnedTripDtosPagedList =
                await TripService.GetAllTripsAsync(
                    searchString : null,
                    paginationDto : paginationDto);

            var returnedTripDtosList = returnedTripDtosPagedList.Items.ToList();
            var expectedTripDtosList = Mapper.Map <List <TripDto> >(tripEntitiesToSeed);

            var tripDtoComparer = new TripDtoComparer();

            // Assert.
            Assert.AreEqual(expectedTripDtosList.Count, returnedTripDtosList.Count);

            for (int i = 0; i < expectedTripDtosList.Count; i++)
            {
                Assert.AreEqual(0,
                                tripDtoComparer.Compare(expectedTripDtosList[i], returnedTripDtosList[i]));
            }
        }
コード例 #18
0
        public async Task UpdateAsync_ValidData_Successful()
        {
            // Arrange.
            Seed(TripFlipDbContext, UserEntityToSeed);
            Seed(TripFlipDbContext, TripEntityToSeed);
            Seed(TripFlipDbContext, TripSubscriberEntityToSeed);
            Seed(TripFlipDbContext, TripSubscriberAdminRoleEntityToSeed);

            CurrentUserService = CreateCurrentUserServiceWithExistentUser();
            TripService        = new TripService(TripFlipDbContext, Mapper, CurrentUserService);

            var updateTripDto = GetUpdateTripDto();

            // Act.
            var resultTripDto = await TripService.UpdateAsync(updateTripDto);

            var expectedTripDto = new TripDto()
            {
                Id          = updateTripDto.Id,
                Title       = updateTripDto.Title,
                Description = updateTripDto.Description,
                StartsAt    = updateTripDto.StartsAt,
                EndsAt      = updateTripDto.EndsAt
            };

            var tripDtoComparer = new TripDtoComparer();

            // Assert.
            Assert.AreEqual(0,
                            tripDtoComparer.Compare(expectedTripDto, resultTripDto));
        }
コード例 #19
0
        Should_return_no_trip_when_current_user_is_not_friend_with_logged_user()
        {
            var tripService = new TripService();
            var tripsByUser = tripService.GetTripsByUser(NotFriendUser, LoggedUser);

            Check.That(tripsByUser).IsEmpty();
        }
コード例 #20
0
        public async Task DeleteByIdAsync_ValidUserAndTripId_Successful()
        {
            // Arrange
            Seed(TripFlipDbContext, TripEntityToSeed);

            Seed(TripFlipDbContext, UserEntityToSeed);
            CurrentUserService = CreateCurrentUserServiceWithExistentUser();

            Seed(TripFlipDbContext, TripSubscriberEntityToSeed);

            Seed(TripFlipDbContext, TripRolesToSeed);
            Seed(TripFlipDbContext, TripSubscriberAdminRoleEntityToSeed);

            TripService = new TripService(
                tripFlipDbContext: TripFlipDbContext,
                mapper: Mapper,
                currentUserService: CurrentUserService);

            int validTripId = 1;

            // Act
            await TripService.DeleteByIdAsync(validTripId);

            // Assert
            bool tripIsDeleted = TripFlipDbContext
                                 .Trips
                                 .Any(trip => trip.Id == validTripId) == false;

            Assert.IsTrue(tripIsDeleted);
        }
コード例 #21
0
        public void MarkTripAsDeleted()
        {
            // Arrange
            var mockedTripRepo          = new Mock <IProjectableRepositoryEf <Trip> >();
            var mockedUserTripRepo      = new Mock <IProjectableRepositoryEf <UsersTrips> >();
            var mockedCityService       = new Mock <ICityService>();
            var mockedTagService        = new Mock <ITagService>();
            var mockedDateTimpeProvider = new Mock <IDateTimeProvider>();
            var mockedMappingProvider   = new Mock <IMappingProvider>();
            var mockedUnitOfWork        = new Mock <IUnitOfWorkEF>();


            var tripService = new TripService(
                () => mockedUnitOfWork.Object,
                mockedUserTripRepo.Object,
                mockedCityService.Object,
                mockedMappingProvider.Object,
                mockedTagService.Object,
                mockedTripRepo.Object,
                mockedDateTimpeProvider.Object);

            var trip = new Trip()
            {
                Id = 1
            };

            mockedTripRepo.Setup(x => x.GetFirst(It.IsAny <Expression <Func <Trip, bool> > >()))
            .Returns(trip);

            // Act
            tripService.DeleteTrip(trip.Id);

            // Assert;
            Assert.IsTrue(trip.IsDeleted);
        }
コード例 #22
0
 public TripServiceShould()
 {
     Friend.AddTrip(ToBarcelona);
     Friend.AddTrip(ToLondon);
     tripDaoMock = new Mock <TripDAO>();
     tripService = new TripService(tripDaoMock.Object);
 }
コード例 #23
0
        public async void GetTripsByLineID_Exists()
        {
            var repo = new Mock <ITripRepository> ();
            var uow  = new Mock <IUnitOfWork> ();

            string lineID            = "Line:1";
            string pathID            = "Path:1";
            string tripDepartureTime = "20:12:10";

            LineId line = new LineId(lineID);

            var trip  = new Trip(lineID, pathID, tripDepartureTime);
            var trips = new List <Trip> ()
            {
                trip
            };

            var tripDTO  = new TripDTO(trip.Id.AsGuid(), new LineId(lineID), new PathId(pathID), tripDepartureTime);
            var tripsDTO = new List <TripDTO> ()
            {
                tripDTO
            };

            repo.Setup(_ => _.GetTripsByLineID(line)).ReturnsAsync(trips);

            var service = new TripService(repo.Object, uow.Object);

            var actual = await service.GetTripsByLineID(line);

            Assert.Equal(tripsDTO, actual);
        }
コード例 #24
0
        public void ThrowInvalidOperationException_WithMessageContaining_OwnerCannotJoin_WhenOwnerOfATripTriesToJoinTheTrip()
        {
            // Arrange
            var mockedTripRepo          = new Mock <IProjectableRepositoryEf <Trip> >();
            var mockedUserTripRepo      = new Mock <IProjectableRepositoryEf <UsersTrips> >();
            var mockedCityService       = new Mock <ICityService>();
            var mockedTagService        = new Mock <ITagService>();
            var mockedDateTimpeProvider = new Mock <IDateTimeProvider>();
            var mockedMappingProvider   = new Mock <IMappingProvider>();
            var mockedUnitOfWork        = new Mock <IUnitOfWorkEF>();

            var tripService = new TripService(
                () => mockedUnitOfWork.Object,
                mockedUserTripRepo.Object,
                mockedCityService.Object,
                mockedMappingProvider.Object,
                mockedTagService.Object,
                mockedTripRepo.Object,
                mockedDateTimpeProvider.Object);

            var tripId = 1;
            var userId = "userId";

            UsersTrips IsUserOwner = new UsersTrips();

            mockedUserTripRepo.Setup(x => x.GetFirst(It.IsAny <Expression <Func <UsersTrips, bool> > >()))
            .Returns(IsUserOwner);

            Assert.That(() => tripService.RequestToJoinTrip(tripId, userId),
                        Throws.InvalidOperationException.With.Message.Contain("owner"));
        }
        public async Task SignUpUserAsyncShouldSaveCorrectDataWithValidTripIdAndUserId()
        {
            // Arrange
            var db = this.GetDatabase();

            const int    tripId = 1;
            const string userId = "TestUserId";

            var trip = new Trip()
            {
                Id         = tripId,
                StartDate  = DateTime.MaxValue,
                Passengers = new List <UserTrip>()
            };

            db.Add(trip);

            await db.SaveChangesAsync();

            var tripService = new TripService(db);

            // Act
            var result = await tripService.JoinAsync(userId, tripId);

            var savedEntry = db.Find <UserTrip>(userId, tripId);

            // Assert
            result
            .Should()
            .Be(true);

            savedEntry
            .Should()
            .NotBeNull();
        }
        public async Task FindAsyncShouldReturnCorrectResultWithFilterAndOrder()
        {
            // Arrange
            var db = this.GetDatabase();

            var firstTrip = new Trip {
                Id = 1, Title = "First"
            };
            var secondTrip = new Trip {
                Id = 2, Title = "Second"
            };
            var thirdTrip = new Trip {
                Id = 3, Title = "Third"
            };

            db.AddRange(firstTrip, secondTrip, thirdTrip);

            await db.SaveChangesAsync();

            var tripService = new TripService(db);

            // Act
            var result = await tripService.FindAsync("t", true, true, true);

            // Assert
            result
            .Should()
            .Match(r => r.ElementAt(0).Id == 3 &&
                   r.ElementAt(1).Id == 1)
            .And
            .HaveCount(2);
        }
コード例 #27
0
        public async Task cancel_trip_async_should_invoke_repository_method()
        {
            var mockedRepository   = new Mock <ITripRepository>();
            var customerRepository = new Mock <ICustomerRepository>();

            mockedRepository.Setup(x => x.GetTripAsync(It.IsAny <Guid>())).ReturnsAsync(DomainTestsHelper.ValidTrip);
            var mockedMapper           = new Mock <ITraveloMapper>();
            var mockedDateTimeProvider = new Mock <IDateTimeOffsetProvider>();

            var tripService =
                new TripService(mockedRepository.Object, customerRepository.Object, mockedMapper.Object,
                                mockedDateTimeProvider.Object);

            var id = Guid.NewGuid();
            await tripService.EditTripAsync(id,
                                            new TripDTO()
            {
                Customers   = new List <CustomerDTO>(), StartDate = DateTimeOffset.Now,
                EndDate     = DateTimeOffset.Now + TimeSpan.FromDays(7),
                Name        = "Hyper trip",
                Destination = "Barzil"
            });

            mockedRepository.Verify(x => x.GetTripAsync(It.IsAny <Guid>()), Times.Once);
            mockedRepository.Verify(x => x.UpdateTripAsync(It.IsAny <Trip>()), Times.Once);
        }
コード例 #28
0
ファイル: Program.cs プロジェクト: klyow90/trains
        private static void PrintShortestDistance(List <Edge> edges, int number, char from, char to)
        {
            var service  = new TripService(edges);
            var distance = service.GetShortestRouteDistance(from, to);

            Print(number, distance.ToString());
        }
コード例 #29
0
ファイル: TripController.cs プロジェクト: adsieg01/Yesla
        //Create Trips
        private TripService TripCreateService()
        {
            var userId = Guid.Parse(User.Identity.GetUserId());
            var svc    = new TripService(userId);

            return(svc);
        }
コード例 #30
0
        public JsonResult AutoComplete(string term)
        {
            var tripService = new TripService();
            var stations    = tripService.GetStationsByName(term);

            return(Json(stations, JsonRequestBehavior.AllowGet));
        }
コード例 #31
0
 public void Init()
 {
     _TripService = new TripService(_TripDao.Object);
 }