Example #1
0
        public void TestCardPaymentSpecificXml()
        {
            _xml = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                   .SetCountryCode(TestingTool.DefaultTestCountryCode)
                   .SetCurrency(TestingTool.DefaultTestCurrency)
                   .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                   .AddOrderRow(TestingTool.CreateMiniOrderRow())
                   .AddCustomerDetails(Item.CompanyCustomer())
                   .UsePayPageCardOnly()
                   .SetReturnUrl(
                "https://webpaypaymentgatewaystage.svea.com/Webpayconnection/admin/merchantresponSetest.xhtm")
                   .GetPaymentForm()
                   .GetXmlMessage();

            const string expectedString =
                "<excludepaymentMethods><exclude>PAYPAL</exclude>" +
                "<exclude>DBNORDEASE</exclude><exclude>DBSEBSE</exclude>" +
                "<exclude>DBSEBFTGSE</exclude><exclude>DBSHBSE</exclude>" +
                "<exclude>DBSWEDBANKSE</exclude><exclude>BANKAXESS</exclude>" +
                "<exclude>SVEAINVOICESE</exclude>" +
                "<exclude>SVEAINVOICEEU_SE</exclude>" +
                "<exclude>SVEASPLITSE</exclude><exclude>SVEASPLITEU_SE</exclude>" +
                "<exclude>SVEAINVOICEEU_DE</exclude>" +
                "<exclude>SVEASPLITEU_DE</exclude>" +
                "<exclude>SVEAINVOICEEU_DK</exclude>" +
                "<exclude>SVEASPLITEU_DK</exclude>" +
                "<exclude>SVEAINVOICEEU_FI</exclude><exclude>SVEASPLITEU_FI</exclude>" +
                "<exclude>SVEAINVOICEEU_NL</exclude><exclude>SVEASPLITEU_NL</exclude>" +
                "<exclude>SVEAINVOICEEU_NO</exclude><exclude>SVEASPLITEU_NO</exclude>" +
                "</excludepaymentMethods>";

            Assert.That(_xml.Contains(expectedString), Is.True);
        }
        public void TestDirectPaymentSpecificXml()
        {
            _xml = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                   .SetCountryCode(TestingTool.DefaultTestCountryCode)
                   .SetCurrency(TestingTool.DefaultTestCurrency)
                   .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                   .AddOrderRow(TestingTool.CreateMiniOrderRow())
                   .AddCustomerDetails(Item.CompanyCustomer())
                   .UsePayPageDirectBankOnly()
                   .SetReturnUrl(
                "https://test.sveaekonomi.se/Webpayconnection/admin/merchantresponSetest.xhtm")
                   .GetPaymentForm()
                   .GetXmlMessage();

            const string expectedString =
                "<excludepaymentMethods><exclude>BANKAXESS</exclude>" +
                "<exclude>PAYPAL</exclude><exclude>KORTCERT</exclude" +
                "><exclude>SKRILL</exclude><exclude>SVEAINVOICESE</exclude>" +
                "<exclude>SVEAINVOICEEU_SE</exclude><exclude>SVEASPLITSE</exclude>" +
                "<exclude>SVEASPLITEU_SE</exclude>" +
                "<exclude>SVEAINVOICEEU_DE</exclude><exclude>SVEASPLITEU_DE</exclude>" +
                "<exclude>SVEAINVOICEEU_DK</exclude><exclude>SVEASPLITEU_DK</exclude>" +
                "<exclude>SVEAINVOICEEU_FI</exclude><exclude>SVEASPLITEU_FI</exclude>" +
                "<exclude>SVEAINVOICEEU_NL</exclude><exclude>SVEASPLITEU_NL</exclude>" +
                "<exclude>SVEAINVOICEEU_NO</exclude><exclude>SVEASPLITEU_NO</exclude>" +
                "</excludepaymentMethods>";

            Assert.That(_xml.Contains(expectedString), Is.True);
        }
        public void TestSucceedOnGoodValuesSe()
        {
            CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                       .AddOrderRow(TestingTool.CreateMiniOrderRow())
                                       .AddCustomerDetails(Item.IndividualCustomer()
                                                           .SetNationalIdNumber(TestingTool.DefaultTestIndividualNationalIdNumber))
                                       .SetCountryCode(TestingTool.DefaultTestCountryCode)
                                       .SetOrderDate(new DateTime(2012, 05, 01))
                                       .SetValidator(new VoidValidator());

            Assert.That(_orderValidator.Validate(order), Is.EqualTo(""));
        }
        public void TestFailOnMissingOrderDate()
        {
            const string expectedMessage =
                "MISSING VALUE - OrderDate is required. Use SetOrderDate().\n";

            CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                       .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                                       .SetCountryCode(TestingTool.DefaultTestCountryCode)
                                       .AddOrderRow(TestingTool.CreateMiniOrderRow())
                                       .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer())
                                       .SetOrderDate(new DateTime())
                                       .SetValidator(new VoidValidator());

            Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage));
        }
Example #5
0
        public void TestPayPagePaymentSpecificXmlNullPaymentMethod()
        {
            _xml = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                   .SetCountryCode(TestingTool.DefaultTestCountryCode)
                   .SetCurrency(TestingTool.DefaultTestCurrency)
                   .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                   .AddOrderRow(TestingTool.CreateMiniOrderRow())
                   .AddCustomerDetails(Item.CompanyCustomer())
                   .UsePayPage()
                   .SetReturnUrl(
                "https://webpaypaymentgatewaystage.svea.com/Webpayconnection/admin/merchantresponSetest.xhtm")
                   .GetPaymentForm()
                   .GetXmlMessage();

            Assert.That(_xml.Contains("<excludepaymentMethods />"), Is.True);
        }
        public void TestPayPagePaymentSpecificXml()
        {
            _xml = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                   .SetCountryCode(TestingTool.DefaultTestCountryCode)
                   .SetCurrency(TestingTool.DefaultTestCurrency)
                   .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                   .AddOrderRow(TestingTool.CreateMiniOrderRow())
                   .AddCustomerDetails(Item.CompanyCustomer())
                   .UsePayPage()
                   .SetReturnUrl(
                "https://test.sveaekonomi.se/Webpayconnection/admin/merchantresponSetest.xhtm")
                   .SetPaymentMethod(PaymentMethod.INVOICE)
                   .GetPaymentForm()
                   .GetXmlMessage();

            Assert.That(_xml.Contains("<paymentmethod>SVEAINVOICEEU_SE</paymentmethod>"), Is.True);
        }
        public void TestPayPagePaymentSetLanguageCode()
        {
            _xml = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                   .SetCountryCode(TestingTool.DefaultTestCountryCode)
                   .SetCurrency(TestingTool.DefaultTestCurrency)
                   .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                   .AddOrderRow(TestingTool.CreateMiniOrderRow())
                   .AddCustomerDetails(Item.CompanyCustomer())
                   .UsePayPage()
                   .SetPayPageLanguageCode(LanguageCode.sv)
                   .SetReturnUrl(
                "https://test.sveaekonomi.se/Webpayconnection/admin/merchantresponSetest.xhtm")
                   .GetPaymentForm()
                   .GetXmlMessage();

            Assert.That(_xml.Contains("<lang>sv</lang>"), Is.True);
        }
Example #8
0
        public void TestXmlCancelUrl()
        {
            _order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                     .SetCountryCode(TestingTool.DefaultTestCountryCode)
                     .SetCurrency(TestingTool.DefaultTestCurrency)
                     .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                     .AddOrderRow(TestingTool.CreateMiniOrderRow())
                     .AddCustomerDetails(Item.CompanyCustomer());

            var payment = new FakeHostedPayment(_order);

            payment.SetCancelUrl("http://www.cancel.com")
            .SetReturnUrl("http://myurl.se")
            .CalculateRequestValues();

            _xml = _xmlBuilder.GetXml(payment);

            Assert.That(_xml.Contains("<cancelurl>http://www.cancel.com</cancelurl>"), Is.True);
        }
        public void TestSetHtmlFields()
        {
            string base64Payment = Base64Util.EncodeBase64String("0");
            string mac           = HashUtil.CreateHash(base64Payment + SecretWord);

            PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                               .SetCountryCode(TestingTool.DefaultTestCountryCode)
                               .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                               .SetCurrency(TestingTool.DefaultTestCurrency)
                               .AddOrderRow(TestingTool.CreateMiniOrderRow())
                               .AddCustomerDetails(TestingTool.CreateCompanyCustomer())
                               .UsePayPageDirectBankOnly()
                               .SetReturnUrl("http://myurl.se")
                               .GetPaymentForm();

            form.SetMessageBase64(base64Payment)
            .SetMerchantId(MerchantId)
            .SetSecretWord(SecretWord)
            .SetHtmlFields();

            var    formHtmlFields = form.GetFormHtmlFields();
            string url            = form.GetPayPageUrl();


            Assert.That(formHtmlFields["form_start_tag"],
                        Is.EqualTo("<form name=\"paymentForm\" id=\"paymentForm\" method=\"post\" action=\"" + url + "\">"));

            Assert.That(formHtmlFields["input_merchantId"],
                        Is.EqualTo("<input type=\"hidden\" name=\"merchantid\" value=\"" + MerchantId + "\" />"));

            Assert.That(formHtmlFields["input_message"],
                        Is.EqualTo("<input type=\"hidden\" name=\"message\" value=\"" + base64Payment + "\" />"));

            Assert.That(formHtmlFields["input_mac"], Is.EqualTo("<input type=\"hidden\" name=\"mac\" value=\"" + mac + "\" />"));

            Assert.That(formHtmlFields["noscript_p_tag"],
                        Is.EqualTo("<noscript><p>Javascript är inaktiverat i er webbläsare, ni får dirigera om till paypage manuellt</p></noscript>"));

            Assert.That(formHtmlFields["input_submit"], Is.EqualTo("<input type=\"submit\" name=\"submit\" value=\"Betala\" />"));

            Assert.That(formHtmlFields["form_end_tag"], Is.EqualTo("</form>"));
        }
        public void TestAmountIncVatAndAmountExVatCalculation()
        {
            CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                       .SetCountryCode(TestingTool.DefaultTestCountryCode)
                                       .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                                       .SetCurrency(TestingTool.DefaultTestCurrency)
                                       .AddOrderRow(TestingTool.CreateMiniOrderRow());

            order.SetShippingFeeRows(null);
            order.SetFixedDiscountRows(null);
            order.SetRelativeDiscountRows(null);
            var payment = new FakeHostedPayment(order);

            payment
            .SetReturnUrl("myurl")
            .CalculateRequestValues();


            Assert.That(payment.GetAmount(), Is.EqualTo(500L));
        }
        public void TestSetFormCardNoCustomerDetails()
        {
            string      base64Payment = Base64Util.EncodeBase64String("0");
            string      mac           = HashUtil.CreateHash(base64Payment + SecretWord);
            PaymentForm form          = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig())
                                        .SetCountryCode(TestingTool.DefaultTestCountryCode)
                                        .SetCurrency(TestingTool.DefaultTestCurrency)
                                        .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber)
                                        .AddOrderRow(TestingTool.CreateMiniOrderRow())
                                        .UsePayPageCardOnly()
                                        .SetReturnUrl("http://myurl.se")
                                        .GetPaymentForm();

            form.SetMessageBase64(base64Payment)
            .SetMerchantId(MerchantId)
            .SetSecretWord(SecretWord)
            .SetForm();

            string expected = "<form name=\"paymentForm\" id=\"paymentForm\" method=\"post\" action=\""
                              + form.GetPayPageUrl()
                              + "\">"
                              + "<input type=\"hidden\" name=\"merchantid\" value=\""
                              + MerchantId
                              + "\" />"
                              + "<input type=\"hidden\" name=\"message\" value=\""
                              + base64Payment
                              + "\" />"
                              + "<input type=\"hidden\" name=\"mac\" value=\""
                              + mac
                              + "\" />"
                              +
                              "<noscript><p>Javascript är inaktiverat i er webbläsare, ni får dirigera om till paypage manuellt</p></noscript>"
                              + "<input type=\"submit\" name=\"submit\" value=\"Betala\" />"
                              + "</form>";

            Assert.That(form.GetCompleteForm(), Is.EqualTo(expected));
        }