File: test_apple_pay.py

package info (click to toggle)
python-braintree 4.31.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,576 kB
  • sloc: python: 28,946; makefile: 9; sh: 8
file content (49 lines) | stat: -rw-r--r-- 2,186 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from tests.test_helper import *

class TestApplePay(unittest.TestCase):
    @staticmethod
    def get_gateway():
        config = Configuration("development", "integration_merchant_id",
                               public_key="integration_public_key",
                               private_key="integration_private_key")
        return BraintreeGateway(config)

    def test_register_domain_registers_an_apple_pay_domain(self):
        result = self.get_gateway().apple_pay.register_domain("www.example.com")

        self.assertTrue(result.is_success)

    def test_register_domain_gets_a_validation_error_when_attempting_to_register_no_domains(self):
        result = self.get_gateway().apple_pay.register_domain("")

        self.assertFalse(result.is_success)
        self.assertEqual(result.errors.for_object("apple_pay")[0].message, "Domain name is required.")

    def test_delete_customer_with_path_traversal(self):
        try:
            customer = Customer.create({"first_name":"Waldo"}).customer
            self.get_gateway().apple_pay.unregister_domain("../../../customers/{}".format(customer.id))
        except NotFoundError:
            pass

        found_customer = Customer.find(customer.id)
        self.assertNotEqual(None, found_customer)
        self.assertEqual("Waldo", found_customer.first_name)


    def test_unregister_domain_unregisters_an_apple_pay_domain(self):
        result = self.get_gateway().apple_pay.unregister_domain("example.org")
        self.assertTrue(result.is_success)

    def test_unregister_domain_unregisters_an_apple_pay_domain_with_schem_in_url(self):
        result = self.get_gateway().apple_pay.unregister_domain("http://example.org")
        self.assertTrue(result.is_success)

    def test_unregister_domain_escapes_the_unregistered_domain_query_parameter(self):
        result = self.get_gateway().apple_pay.unregister_domain("ex&mple.org")
        self.assertTrue(result.is_success)

    def test_registered_domains_returns_stubbed_registered_domains(self):
        result = self.get_gateway().apple_pay.registered_domains()
        self.assertEqual(len(result), 1)
        self.assertEqual(result[0], "www.example.com")