public UpdatePaymentTests() { var today = new DateTimeOffset(new DateTime(2019, 08, 19, 0, 0, 0, DateTimeKind.Utc)); var dateProvider = Substitute.For<IProvideDateTime>(); dateProvider.UtcNow().Returns(today); _payment = PaymentFactory.Create(dateProvider); _service = new DomainServices.PaymentService(); }
public void Should_throw_when_payment_is_null() { // Arrange var service = new DomainServices.PaymentService(); // Act Action action = () => service.HasAlreadyBeenProcessed(null); // Assert action.Should().Throw <ArgumentNullException>(); }
public void Should_return_false_when_payment_is_pending() { // Arrange var service = new DomainServices.PaymentService(); // Act var result = service.HasAlreadyBeenProcessed(_payment); // Assert result.Should().BeFalse(); }
public void Should_return_true_when_payment_has_been_rejected() { // Arrange var service = new DomainServices.PaymentService(); _payment.Reject(BankTransactionId.Create()); // Act var result = service.HasAlreadyBeenProcessed(_payment); // Assert result.Should().BeTrue(); }