public void should_save_and_read_prescriber_eoc() { // arrange PrescriberEoc savedEoc = new PrescriberEoc { PrescriberProfileId = -1, DrugId = -1, EocId = -1, Deleted = true, CompletedAt = null }; PrescriberEoc loadedEoc = null; // act _complianceRepo.Save(savedEoc); loadedEoc = _complianceRepo.Find(-1, -1, -1); loadedEoc.Deleted = false; _complianceRepo.Save(loadedEoc); loadedEoc = _complianceRepo.Find(-1, -1, -1); // assert loadedEoc.Should().NotBeNull(); loadedEoc.Id.Should().NotBe(0); loadedEoc.DrugId.Should().Be(-1); loadedEoc.CompletedAt.Should().Be(null); loadedEoc.Deleted.Should().BeFalse(); }
public void should_call_LogEocComplianceEntry() { // arrange PrescriberEoc expectedEoc = new PrescriberEoc { Id = 1, PrescriberProfileId = 1, DrugId = 1, EocId = 1, CompletedAt = DateTime.Now }; PrescriberEocLogEntry logEntry = new PrescriberEocLogEntry(); _complianceRepo.Stub(x => x.Find(0,0,0)).IgnoreArguments().Return(expectedEoc); _complianceRepo.Stub(x => x.Save(null)).IgnoreArguments(); _complianceRepo.Stub(x => x.LogEocComplianceEntry(0, DateTime.Now)) .IgnoreArguments() .WhenCalled(x => { logEntry.PrescriberEocId = (long)x.Arguments[0]; logEntry.RecordedAt = (DateTime)x.Arguments[1]; }); // act _complianceSvc.RecordCompliance(expectedEoc); // assert logEntry.PrescriberEocId.Should().Be(expectedEoc.Id); logEntry.RecordedAt.Should().Be(expectedEoc.CompletedAt.Value); }
public void RecordCompliance(PrescriberEoc prescriberEoc) { _complianceRepo.Save(prescriberEoc); // TODO: Optimize this. This approach is terrible PrescriberEoc eoc = _complianceRepo.Find(prescriberEoc.PrescriberProfileId, prescriberEoc.DrugId, prescriberEoc.EocId); if(eoc.Id > 0 && eoc.CompletedAt != null) LogEocComplianceEntry(eoc.Id, eoc.CompletedAt.Value); }