public void ShouldNotBeValidWithWrongEmployee() { var report = new ExpenseReport(); report.Status = ExpenseReportStatus.Cancelled; var employee = new Employee(); report.Approver = employee; var command = new DraftToCancelledCommand(); Assert.That(command.IsValid(new ExecuteTransitionCommand(report, null, employee, new DateTime())), Is.False); }
public void ShouldBeValid() { var report = new ExpenseReport(); report.Status = ExpenseReportStatus.Draft; var employee = new Employee(); report.Submitter = employee; var command = new DraftToCancelledCommand(); Assert.That(command.IsValid(new ExecuteTransitionCommand(report, null, employee, new DateTime())), Is.True); }
public void ShouldNotBeValidInWrongStatus() { var order = new ExpenseReport(); order.Status = ExpenseReportStatus.Draft; var employee = new Employee(); order.Approver = employee; var command = new DraftToCancelledCommand(); Assert.That(command.IsValid(new ExecuteTransitionCommand(order, null, employee, new DateTime())), Is.False); }
public void ShouldSetLastCancelledOnExecute() { var report = new ExpenseReport(); report.Status = ExpenseReportStatus.Cancelled; DateTime cancelledDate = new DateTime(2015, 6, 30); var employee = new Employee(); report.Submitter = employee; var command = new DraftToCancelledCommand(); command.Execute(new ExecuteTransitionCommand(report, null, employee, cancelledDate)); Assert.That(report.LastCancelled, Is.EqualTo(cancelledDate)); }
public void ShouldTransitionStateProperly() { var report = new ExpenseReport(); report.Number = "123"; report.Status = ExpenseReportStatus.Draft; var employee = new Employee(); report.Approver = employee; var command = new DraftToCancelledCommand(); command.Execute(new ExecuteTransitionCommand(report, null, employee, new DateTime())); Assert.That(report.Status, Is.EqualTo(ExpenseReportStatus.Cancelled)); }