public void TestFailAmountExVatIsMissing()
 {
     const string expectedMessage = "MISSING VALUE - CountryCode is required. Use SetCountryCode(...).\n" +
                                    "MISSING VALUE - ClientOrderNumber is required (has an empty value). Use SetClientOrderNumber(...).\n" +
                                    "MISSING VALUE - At least one of the values must be set in combination with VatPercent: AmountIncVat or AmountExVat for Orderrow. Use one of: SetAmountExVat() or SetAmountIncVat().\n";
     CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                                .AddOrderRow(Item.OrderRow()
                                                                 .SetQuantity(1)
                                                                 .SetVatPercent(25))
                                                .SetCurrency(TestingTool.DefaultTestCurrency)
                                                .SetClientOrderNumber("")
                                                .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer())
                                                .SetValidator(new VoidValidator())
                                                .Build();
     _orderValidator = new HostedOrderValidator();
     Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage));
 }
        public void TestValidateNlCustomerIdentity()
        {
            CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                                       .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                                                       .SetCountryCode(CountryCode.NL)
                                                       .SetCurrency(Currency.EUR)
                                                       .AddOrderRow(Item.OrderRow()
                                                                        .SetAmountExVat(5.0M)
                                                                        .SetVatPercent(25)
                                                                        .SetQuantity(1))
                                                       .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer());
            _orderValidator = new HostedOrderValidator();

            Assert.That(_orderValidator.Validate(order), Is.Empty);
        }
 public void TestValidateFailOrderIsNull()
 {
     const string expectedMessage = "MISSING VALUE - CountryCode is required. Use SetCountryCode(...).\n" +
                                    "MISSING VALUE - ClientOrderNumber is required (has an empty value). Use SetClientOrderNumber(...).\n" +
                                    "MISSING VALUES - AmountExVat, Quantity and VatPercent are required for Orderrow. Use SetAmountExVat(), SetQuantity() and SetVatPercent().\n";
     CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                                .AddOrderRow(null)
                                                .SetCurrency(TestingTool.DefaultTestCurrency)
                                                .SetClientOrderNumber("")
                                                .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer())
                                                .SetValidator(new VoidValidator())
                                                .Build();
     _orderValidator = new HostedOrderValidator();
     Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage));
 }
 public void SetUp()
 {
     _orderValidator = new HostedOrderValidator();
 }
 public void SetUp()
 {
     _orderValidator = new WebServiceOrderValidator();
 }