public void Setup() { Bootstrapper.BootstrapTest(); _systemClock = SystemClock.For(DateTime.Parse("1/1/2020 8:00 AM")); _field = ObjectMother.ValidField("Raif").WithEntityId(1); _event1 = ObjectMother.ValidEvent("event1").WithEntityId(1); _event1.StartTime = DateTime.Parse("1/2/2020 8:00 AM"); _event2 = ObjectMother.ValidEvent("event1").WithEntityId(2); _event2.StartTime = DateTime.Parse("1/3/2020 8:00 AM"); _event3 = ObjectMother.ValidEvent("event1").WithEntityId(3); _event3.StartTime = DateTime.Parse("1/1/2010 8:00 AM"); _field.AddEvent(_event1); _field.AddEvent(_event2); _field.AddEvent(_event3); _SUT = new FieldHasNoOutstandingEvents(_systemClock); _ruleResult = _SUT.Execute(_field); }
// getting the repo version of _event in action so I can tell if the _event was completed in past // maybe not so cool. don't know private Event mapToDomain(EventViewModel model, Event _event) { var _eventModel = model.Event; var field = _repository.Find<Field>(model.Field); var eventType = _repository.Find<EventType>(model.EventType); _event.ScheduledDate = _eventModel.ScheduledDate; _event.StartTime = DateTime.Parse(_eventModel.ScheduledDate.Value.ToShortDateString() + " " + _eventModel.StartTime.Value.ToShortTimeString()); if(_eventModel.EndTime.HasValue) { _event.EndTime = DateTime.Parse(_eventModel.ScheduledDate.Value.ToShortDateString() + " " + _eventModel.EndTime.Value.ToShortTimeString()); } _event.EventType = eventType; _event.Field = field; _event.Notes = _eventModel.Notes; return _event; }
public virtual void AddEvent(Event fieldEvent) { if (!fieldEvent.IsNew() && _events.Contains(fieldEvent)) return; _events.Add(fieldEvent); }
public virtual void RemoveEvent(Event fieldEvent) { _events.Remove(fieldEvent); }