Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 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);
     }
 }
Exemplo n.º 3
0
 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);
            }
        }
Exemplo n.º 6
0
        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);
 }
Exemplo n.º 8
0
 private void CreateRepository(List <InsurancePolicy> policies, String fileName = defaultFileName)
 {
     DeleteRepository(fileName);
     _repository = new DataAccess.InsurancePolicyRepository(fileName);
     _repository.SaveAll(policies);
 }