//TEST SET UP: This method will find the phoneNumber specified and will create numberOfRequests
        //for that phone number.  These requests will have no TrackingResponses associated with them
        public static void CreateTrackingRequests(string phoneNumber, int numberOfRequests)
        {
            using (UGFContext db = new UGFContext())
            {
                Person p = db.FindPersonByPhoneNumber(phoneNumber);
                if (p == null)
                {
                    throw new Exception("Unable to find person with phonenumber: " + phoneNumber);
                }

                DateTime backDate = (DateTime.Now - new TimeSpan(((int)numberOfRequests / 3) + 2, 0, 0, 0)).ToShortDateString().ToDate();

                if (p.CreatedDate > backDate)
                {
                    p.CreatedDate = backDate;
                    p.ResumedDate = "";
                    db.SaveChanges();
                }

                IEnumerable <UserSchedule> schedules = p.UserSchedules;
                int currentCount = 0;

                while (backDate <= DateTime.Now)
                {
                    foreach (UserSchedule s in schedules.OrderBy(t => t.OverrideUTCTimeOfDayToSend))
                    {
                        backDate = backDate.SetTimeOfDay(s.OverrideUTCTimeOfDayToSend.ToShortTimeString());

                        string          text    = s.SourceSchedule.ReferenceText;
                        TrackingRequest request = new TrackingRequest()
                        {
                            PersonId = p.PersonId, DateSent = backDate, TextSent = text, UserScheduleId = s.UserScheduleId
                        };
                        db.TrackingReqeusts.Add(request);
                        currentCount += 1;

                        if (currentCount >= numberOfRequests)
                        {
                            backDate = DateTime.Now;
                            break;
                        }
                    }

                    backDate = backDate.AddDays(1);
                }

                db.SaveChanges();
            }
        }
Beispiel #2
0
 public UnitTest1()
 {
     _seeder     = new UGFSeeder((ClassFactory._db == null), ClassFactory.CreateRepository());
     _repository = (UGFContext)ClassFactory.CreateRepository();
 }