public void ForUpdate_AssignedOn_DoesNotSet_SubmittedOn()
        {
            var modifier   = new StandardsApplicableModifier();
            var assignedOn = new DateTime(2006, 2, 20, 6, 3, 0);
            var claim      = Creator.GetStandardsApplicable(assignedOn: assignedOn);

            modifier.ForUpdate(claim);

            claim.AssignedOn.Should().BeCloseTo(assignedOn);
        }
        public void ForUpdate_NotSubmitted_DoesNotSet_SubmittedOn(StandardsApplicableStatus status)
        {
            var modifier    = new StandardsApplicableModifier();
            var submittedOn = new DateTime(2006, 2, 20, 6, 3, 0);
            var claim       = Creator.GetStandardsApplicable(status: status, submittedOn: submittedOn);

            modifier.ForUpdate(claim);

            claim.SubmittedOn.Should().BeCloseTo(submittedOn);
        }
        public void ForUpdate_DefaultAssignedOn_Sets_SubmittedOn_ToUnixEpoch()
        {
            var modifier   = new StandardsApplicableModifier();
            var assignedOn = default(DateTime);
            var claim      = Creator.GetStandardsApplicable(assignedOn: assignedOn);

            modifier.ForUpdate(claim);

            claim.AssignedOn.Should().BeCloseTo(DateTime.UnixEpoch);
        }
        public void ForUpdate_ToSubmitted_Sets_SubmittedOn_ToUtcNow()
        {
            var modifier    = new StandardsApplicableModifier();
            var submittedOn = new DateTime(2006, 2, 20, 6, 3, 0);
            var claim       = Creator.GetStandardsApplicable(status: StandardsApplicableStatus.Submitted, submittedOn: submittedOn);

            modifier.ForUpdate(claim);

            claim.SubmittedOn.Should().BeCloseTo(DateTime.UtcNow);
        }