//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(); } }
public UnitTest1() { _seeder = new UGFSeeder((ClassFactory._db == null), ClassFactory.CreateRepository()); _repository = (UGFContext)ClassFactory.CreateRepository(); }