public void CommitTwiceAfterChanges()
        {
            var id = ClaimId.NewId();
            var claim = _unitUnderTest.GetById(id);
            var policyService = new Mock<IPolicyService>();
            var vehicleService = new Mock<IVehicleService>();

            var expectedPolicy = new PolicyNo("1234");
            claim.AssignPolicy(expectedPolicy, policyService.Object);
            _unitUnderTest.AddOrUpdate(claim);
            _ws.Commit();

            var reloaded = _unitUnderTest.GetById(id);
            var expectedVehicle = new Vehicle("Ford");
            reloaded.AssignVehicle(expectedVehicle, vehicleService.Object);
            _unitUnderTest.AddOrUpdate(reloaded);
            _ws.Commit();

            reloaded = _unitUnderTest.GetById(id);

            Assert.AreEqual(expectedPolicy, reloaded.PolicyNo);
            Assert.AreEqual(expectedVehicle, reloaded.Vehicle);
        }
 public void ProcessPayout(PolicyNo policy, Payout payout)
 {
     //do nothing
 }
 public void CancelPayout(PolicyNo policyNo, Payout payout)
 {
     //do nothing
 }
 public ClaimNo GenerateClaimNo(PolicyNo policyNo)
 {
     return new ClaimNo($"{policyNo.Value}:{DateTime.UtcNow:HHmmss}");
 }