public void Should_persist_insurance_info() { var insuranceInformation = Xenios.Test.Helpers.InsurancePolicyHelper.CreateInsurancePolicies(1); _repository.SaveAll(insuranceInformation); var savedInformation = _repository.GetAll(); Xenios.Test.Helpers.InsurancePolicyHelper.AssertAreEqual(insuranceInformation, savedInformation); }
public void Should_throw_exception_writing_to_file_already_opened_for_write() { using (var fs = new FileStream(fileName, FileMode.Create, FileAccess.Write)) { _repository = new InsurancePolicyRepository(fileName); var insuranceInformation = Xenios.Test.Helpers.InsurancePolicyHelper.CreateInsurancePolicies(1); _repository.SaveAll(insuranceInformation); } }
public void Should_throw_exception_writing_to_file_already_opened_for_write() { using (var fs = new FileStream(fileName, FileMode.Create, FileAccess.Write)) { _repository = new InsurancePolicyRepository(fileName); var insuranceInformation = Xenios.Test.Helpers.InsurancePolicyHelper.CreateInsurancePolicies(1); _repository.SaveAll(insuranceInformation); } }
public override void Save(List <InsurancePolicy> insurancePolicies) { lock (_saveLocker) { _repositoryUpdatedNotificationService.NotifyRepositoryUpdated -= RaiseNotifyInsurancePoliciesUpdated; var lastWriteDate = _policiesRepository.SaveAll(insurancePolicies); _repositoryUpdatedNotificationService.NotifyRepositoryUpdated += RaiseNotifyInsurancePoliciesUpdated; if (lastWriteDate != _policiesRepository.GetLastWriteTime()) { RaiseNotifyInsurancePoliciesUpdated(); } } }
public void Should_notify_insurance_policies_updated() { CreateRepository(initialRecordCount: 0); var isNotifiedEvent = new AutoResetEvent(false); using (var service = new InsurancePolicyDataService(defaultFileName)) { service.NotifyInsurancePoliciesUpdated += () => { isNotifiedEvent.Set(); }; // Add a new policy record directly through an unmonitored repository to simulate an external process // updating the repository var newInformation = Xenios.Test.Helpers.InsurancePolicyHelper.CreateInsurancePolicies(1); var repo = new DataAccess.InsurancePolicyRepository(defaultFileName); repo.SaveAll(newInformation); bool isNotified = isNotifiedEvent.WaitOne(Constants.WaitTimeOut); Assert.IsTrue(isNotified); } }
public void Should_notify_insurance_policies_updated() { CreateRepository(initialRecordCount: 0); var isNotifiedEvent = new AutoResetEvent(false); using (var service = new InsurancePolicyDataService(defaultFileName)) { service.NotifyInsurancePoliciesUpdated += () => { isNotifiedEvent.Set(); }; // Add a new policy record directly through an unmonitored repository to simulate an external process // updating the repository var newInformation = Xenios.Test.Helpers.InsurancePolicyHelper.CreateInsurancePolicies(1); var repo = new DataAccess.InsurancePolicyRepository(defaultFileName); repo.SaveAll(newInformation); bool isNotified = isNotifiedEvent.WaitOne(Constants.WaitTimeOut); Assert.IsTrue(isNotified); } }
private void CreateRepository(List<InsurancePolicy> policies, String fileName = defaultFileName) { DeleteRepository(fileName); _repository = new DataAccess.InsurancePolicyRepository(fileName); _repository.SaveAll(policies); }
private void CreateRepository(List <InsurancePolicy> policies, String fileName = defaultFileName) { DeleteRepository(fileName); _repository = new DataAccess.InsurancePolicyRepository(fileName); _repository.SaveAll(policies); }