public void Test_CreateEmptyPolicyWithDefaultUserSucceeds_WithFixture()
        {
            //setup/arrange
            Mockery mockery = new Mockery();
            User user = new UserFixture().CreateValidUser();
            PolicyDAO policyDAO = mockery.NewMock<PolicyDAO>();
            Expect.Once.On(policyDAO).Method("Save").WithAnyArguments();
            PolicyManager manager = new PolicyManagerImpl(policyDAO);

            //execute/act
            Policy policy = manager.CreateEmptyPolicy(user);

            //assert
            mockery.VerifyAllExpectationsHaveBeenMet();
            Assert.AreSame(user, policy.Holder, "holder should be user we created for");
            Assert.AreEqual(0, policy.Coverages.Count, "coverages should be zero");
        }
        public void Test_CreateEmptyPolicyWithCustomUserSucceeds_WithBuilder()
        {
            //setup/arrange
            Mockery mockery = new Mockery();
            User user = new UserBuilder().WithUserName("customuser").Build();                   //this would require something special in the fixture, or more code here
            PolicyDAO policyDAO = mockery.NewMock<PolicyDAO>();
            Expect.Once.On(policyDAO).Method("Save").WithAnyArguments();
            PolicyManager manager = new PolicyManagerImpl(policyDAO);

            //execute/act
            Policy policy = manager.CreateEmptyPolicy(user);

            //assert
            mockery.VerifyAllExpectationsHaveBeenMet();
            Assert.AreSame(user, policy.Holder, "holder should be user we created for");
            Assert.AreEqual(user.UserName, policy.Holder.UserName, "usernames should be equal");
            Assert.AreEqual(0, policy.Coverages.Count, "coverages should be zero");
        }