예제 #1
0
        public TConnectedVehicleController()
        {
            connectionString = ConfigurationManager.ConnectionStrings["DataConnectionString"].ConnectionString;
            IDTOContext idto = new IDTOContext(connectionString);

            this.Uow = new UnitOfWork(idto);
        }
예제 #2
0
 public void testSendEmail_Passes()
 {
     using (IDbContext idtoFakeContext = new IDTOContext(@"Server=tcp:sfkee7y99k.database.windows.net,1433;Database=IDTO_Test;User ID=vital_admin@sfkee7y99k;Password=Super$0813^Monkey;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"))
         using (IUnitOfWork unitOfWork = new UnitOfWork(idtoFakeContext))
         {
             TravelerMonitorWorker worker = new TravelerMonitorWorker();
             worker.SendInactivityEmails(unitOfWork);
         }
 }
예제 #3
0
        public DashboardController()
        {
            connectionString = ConfigurationManager.ConnectionStrings["DataConnectionString"].ConnectionString;
            IDTOContext idto = new IDTOContext(connectionString);

            this.Uow = new UnitOfWork(idto);

            String EndPointConnection = ConfigurationManager.AppSettings["EndPointConnection"];
            String HubName            = ConfigurationManager.AppSettings["HubName"];

            notificationManager = new PushNotificationManager(EndPointConnection, HubName);
        }
예제 #4
0
        public void IntegrationTest_CapTrans()
        {
            WorkerRole workerRole = new WorkerRole();
            int        tripid     = -1;
            Thread     th         = new Thread(new ThreadStart(() =>
            {
                using (ShimsContext.Create())
                {
                    workerRole = Setup();

                    using (IDbContext context = new IDTOContext(realContextConnectionString))
                        using (IUnitOfWork Uow = new UnitOfWork(context))
                        {
                            //First, delete all existing nunit data or we accumulate duplicates
                            ClearOutPreviousNUnitTests(Uow);

                            Traveler tr;
                            Trip t;
                            List <Step> steps;
                            SetupBaseTConnectOpp_CapTransTrav_Trip_Steps(Uow, out tr, out t, out steps);

                            SetupHalfHourBus5MinWalk25MinWaitHalfHourBus_Probe4MinAwayAtLatestAllowableTime(tr, steps);


                            ITripService tripService = new TripService(5);
                            tripid = tripService.SaveTrip(t, steps, Uow);

                            //Act
                            workerRole.Run();
                        }
                }
            }));

            th.Start();

            Thread.Sleep(60000); //give the test time to run (deletion of old test results takes a bit, then running new test )
            workerRole.OnStop();
            Thread.Sleep(10000); //give it time to stop.
            using (IDbContext context = new IDTOContext(realContextConnectionString))
                using (IUnitOfWork Uow = new UnitOfWork(context))
                {
                    var createdrequest = Uow.Repository <TConnectRequest>().Query().Include(r => r.TConnect.InboundStep.Trip).Get().Where(k => k.TConnect.InboundStep.Trip.Id.Equals(tripid)).First();
                    Assert.AreEqual(5, createdrequest.RequestedHoldMinutes);
                }
        }
예제 #5
0
        public void testwithrealrepo_Passes()
        {
            //need to use Include, lazy loading is off
            using (IDbContext idtoFakeContext = new IDTOContext(@"Server=tcp:sfkee7y99k.database.windows.net,1433;Database=IDTO_Test;User ID=vital_admin@sfkee7y99k;Password=Super$0813^Monkey;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"))
                using (IUnitOfWork unitOfWork = new UnitOfWork(idtoFakeContext))
                {
                    int firstrandomid = unitOfWork.Repository <TConnect>().Query().Get().Select(i => i.Id).First();
                    var t             = unitOfWork.Repository <TConnect>().Query().Include(i => i.InboundStep.Trip.Traveler).Get()
                                        .Where(code => code.Id.Equals(firstrandomid)).First();
                    //vehiclenname line will fail if the below command is used instead.
                    //var t = unitOfWork.Repository<TConnect>().Query().Get()
                    //                .Where(code => code.Id.Equals(firstrandomid)).First();
                    string vehicleName = t.InboundStep.Trip.Traveler.LastName;

                    TConnectMonitorWorker worker = new TConnectMonitorWorker(null);
                    worker.SetupNewTConnects(unitOfWork);
                }
        }
예제 #6
0
        public void IntegrationTest_CapTrans_TwoTConnectsForSameVehicle()
        {
            WorkerRole workerRole = new WorkerRole();
            int        tripid     = -1;
            int        tripid2    = -1;
            DateTime   nowish     = DateTime.UtcNow;
            Thread     th         = new Thread(new ThreadStart(() =>
            {
                using (ShimsContext.Create())
                {
                    workerRole = Setup();

                    using (IDbContext context = new IDTOContext(realContextConnectionString))
                        using (IUnitOfWork Uow = new UnitOfWork(context))
                        {
                            //First, delete all existing nunit data or we accumulate duplicates
                            ClearOutPreviousNUnitTests(Uow);

                            Traveler tr;
                            Trip t;
                            List <Step> steps;
                            SetupBaseTConnectOpp_CapTransTrav_Trip_Steps(Uow, out tr, out t, out steps);

                            SetupHalfHourBus5MinWalk25MinWaitHalfHourBus_Probe4MinAwayAtLatestAllowableTime(tr, steps);


                            ITripService tripService = new TripService(5);
                            tripid = tripService.SaveTrip(t, steps, Uow);

                            Traveler tr2;
                            Trip t2;
                            List <Step> steps2;

                            tr2 = LoadDifferentTraveler(Uow);
                            GetTripAndSteps_CapTrans(tr2, out t2, out steps2);

                            Setup17MinBus3MinWait20MinBus_Probe4MinAwayAt1MinToSpare(tr2, steps2);


                            nowish = steps2[1].StartDate = steps[2].StartDate;//outbound steps must have identical start date

                            tripid2 = tripService.SaveTrip(t2, steps2, Uow);

                            //Act
                            workerRole.Run();
                        }
                }
            }));

            th.Start();

            Thread.Sleep(60000); //give the test time to run (deletion of old test results takes a bit, then running new test )
            workerRole.OnStop();
            Thread.Sleep(10000); //give it time to stop.
            using (IDbContext context = new IDTOContext(realContextConnectionString))
                using (IUnitOfWork Uow = new UnitOfWork(context))
                {
                    var createdrequest = Uow.Repository <TConnectRequest>().Query().Include(r => r.TConnect.InboundStep.Trip).Get().Where(k => k.TConnect.InboundStep.Trip.Id.Equals(tripid)).First();
                    Assert.AreEqual(5, createdrequest.RequestedHoldMinutes);

                    var createdrequest2 = Uow.Repository <TConnectRequest>().Query().Include(r => r.TConnect.InboundStep.Trip).Get().Where(k => k.TConnect.InboundStep.Trip.Id.Equals(tripid2)).First();
                    Assert.AreEqual(3, createdrequest2.RequestedHoldMinutes);

                    var v = Uow.Repository <TConnectedVehicle>().Query().Get().Where(m => m.OriginallyScheduledDeparture.Day.Equals(nowish.Day) &&
                                                                                     m.OriginallyScheduledDeparture.Hour.Equals(nowish.Hour) &&
                                                                                     m.OriginallyScheduledDeparture.Minute.Equals(nowish.Minute) &&
                                                                                     m.OriginallyScheduledDeparture.Second.Equals(nowish.Second));
                    Assert.AreEqual(1, v.Count());
                }
        }