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();
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }