public void f() { var workTime = WorkTimeTestUtils.CreateManual(); _repository.Save(workTime); workTime.MarkPendingEventsAsHandled(); for (int i = 0; i < 2; i++) { _uow.RegisterNew(workTime); workTime.StartManually(); _uow.Save(); var found = _repository.Find(workTime.User, DateTime.UtcNow); found.Started.Should().BeTrue(); _uow.Rollback(); found = _repository.Find(workTime.User, DateTime.UtcNow); found.Started.Should().BeFalse(); _repository.CountForUser(workTime.User).Should().Be(1); } }
private void SavePendingEvents() { Debug.Assert(WorkTime != null); if (_uow.HasRegistered) { Debug.WriteLine("Saving temporary mk events"); _uow.Save(); WorkTime.ClearEvents(); } else { Debug.WriteLine("Saving mk events"); _repository.Save(WorkTime); WorkTime.MarkPendingEventsAsHandled(); WorkTime.ClearEvents(); } }