コード例 #1
0
        public void Handle_GivenInvalidData_ShouldFailValidation()
        {
            var validator = new CreatePaymentCommandValidator();

            validator.ShouldHaveValidationErrorFor(i => i.Amount, 0);
            validator.ShouldHaveValidationErrorFor(i => i.Date, DateTime.Now.AddDays(-1));
        }
コード例 #2
0
        public void IsValid_ShouldBeFalse_WhenMissingMandatoryFields()
        {
            var command = new Application.Payments.Commands.CreatePayment.CreatePaymentCommand
            {
                Amount         = 30,
                ExpirationDate = DateTime.Today,
                CardHolder     = "test",
            };
            var dateTimeMock = new Mock <IDateTime>();

            dateTimeMock.Setup(m => m.Now)
            .Returns(new DateTime(3001, 1, 1));

            var validator = new CreatePaymentCommandValidator(Context, dateTimeMock.Object);

            var result = validator.Validate(command);

            result.IsValid.ShouldBe(false);
        }
コード例 #3
0
        public void IsValid_ShouldBeTrue_WhenAllParametersAreCorrect()
        {
            var dateTimeMock = new Mock <IDateTime>();

            dateTimeMock.Setup(m => m.Now)
            .Returns(new DateTime(2001, 1, 1));

            var command = new Application.Payments.Commands.CreatePayment.CreatePaymentCommand
            {
                Amount           = 30,
                SecurityCode     = "123",
                ExpirationDate   = DateTime.Today,
                CardHolder       = "test",
                CreditCardNumber = "379354508162306"
            };


            var validator = new CreatePaymentCommandValidator(Context, dateTimeMock.Object);

            var result = validator.Validate(command);

            result.IsValid.ShouldBe(true);
        }
コード例 #4
0
 public void Setup()
 {
     validator = new CreatePaymentCommandValidator();
 }
コード例 #5
0
 public CreatePaymentCommandValidatorTests()
 {
     validator = new CreatePaymentCommandValidator();
 }