public void When_rejecting_a_submission() { var sub = new Submission(new User("foo"), new SubmissionViewModel(), new CallForSpeakers()); var domainEmailSender = S<IDomainEmailSender>(); sub.Status.ShouldEqual(Submission.Submitted); sub.Reject("reason", domainEmailSender); sub.RejectionReason.ShouldEqual("reason"); sub.Status.ShouldEqual(Submission.Rejected); domainEmailSender.AssertWasCalled(x => x.SubmissionRejection(sub)); }