Exemple #1
0
    def __init__(self, api_secret=None, resource_path=None, verify_ssl=True):
        """
        Summary.

        Args:
            api_secret (TYPE, optional): Description
            resource_path (TYPE, optional): Description
            verify_ssl (bool, optional): Description

        Raises:
            error.ValidationError: Description
        """
        self.protocol = util.utf8('https')
        self.api_host = util.utf8(self.protocol + '://api.paystack.co/')

        if not api_secret:  # pragma: no cover
            raise error.ValidationError("You must provide your API SECRET_KEY "
                                        "during object initialisation")

        if not resource_path:  # pragma: no cover
            raise error.ValidationError("You must provide the API endpoint "
                                        "for the resource you want to access.")

        self.api_secret = util.utf8(api_secret)
        self.resource_path = self._class_name(resource_path)
        self.client = RequestsClient(verify_ssl_certs=verify_ssl)
        self.request_headers = {
            "Authorization": "Bearer {0}".format(self.api_secret),
            "Content-Type": "application/json",
            "user-agent": "PaystackSDK - {0}".format(version.VERSION)
        }
        self._result = {}
        self._status_code = None
        self._response_headers = {}
Exemple #2
0
    def __init__(self, api_secret=None, resource_path=None, verify_ssl=True):
        """
        Summary.

        Args:
            api_secret (TYPE, optional): Description
            resource_path (TYPE, optional): Description
            verify_ssl (bool, optional): Description

        Raises:
            error.ValidationError: Description
        """
        self.protocol = util.utf8('https')
        self.api_host = util.utf8(self.protocol + '://api.paystack.co/')

        if not api_secret:  # pragma: no cover
            raise error.ValidationError("You must provide your API SECRET_KEY "
                                        "during object initialisation")

        if not resource_path:  # pragma: no cover
            raise error.ValidationError("You must provide the API endpoint "
                                        "for the resource you want to access.")

        self.api_secret = util.utf8(api_secret)
        self.resource_path = self._class_name(resource_path)
        self.client = RequestsClient(verify_ssl_certs=verify_ssl)
        self.request_headers = {
            "Authorization": "Bearer {0}".format(self.api_secret),
            "Content-Type": "application/json",
            "user-agent": "PaystackSDK - {0}".format(version.VERSION)
        }
        self._result = {}
        self._status_code = None
        self._response_headers = {}
Exemple #3
0
    def setUp(self):
        """
        Test set up method.

        Returns:
            None
        """
        self.value = util.utf8('138186')
Exemple #4
0
    def setUp(self):
        """
        Test set up method.

        Returns:
            None
        """
        self.value = util.utf8('138186')
Exemple #5
0
    def test_equal(self):
        """
        Summary.

        Returns:
            name (TYPE): Description
        """
        self.value = util.utf8(138186)
        self.assertEqual(self.value, 138186)
Exemple #6
0
    def test_equal(self):
        """
        Summary.

        Returns:
            name (TYPE): Description
        """
        self.value = util.utf8(138186)
        self.assertEqual(self.value, 138186)
Exemple #7
0
    def setUp(self):
        """
        Test set up method.

        Returns:
            None
        """
        rand = ''.join(
            [random
             .choice(string.ascii_letters + string.digits) for n in range(16)])
        self.secret_key = 'sk_test_16c58271c29a007970de0353d8a47868df727cd0'
        self.random_ref = util.utf8(rand)
        self.test_email = '*****@*****.**'
        self.test_amount = 5000
        self.plan = 'Basic'
        self.client = TransactionResource(self.secret_key, self.random_ref)
Exemple #8
0
    def setUp(self):
        """
        Test set up method.

        Returns:
            None
        """
        rand = ''.join([
            random.choice(string.ascii_letters + string.digits)
            for n in range(16)
        ])
        self.secret_key = 'sk_test_16c58271c29a007970de0353d8a47868df727cd0'
        self.random_ref = util.utf8(rand)
        self.test_email = '*****@*****.**'
        self.test_amount = 5000
        self.plan = 'Basic'
        self.client = TransactionResource(self.secret_key, self.random_ref)
Exemple #9
0
    def _class_name(cls, resource_path):
        """
        Summary.

        Args:
            resource_path (TYPE): Description

        Raises:
            error.APIError: Description

        Returns:
            name (TYPE): Description
        """
        if cls == BaseAPIResource:
            raise error.APIError(
                'You cannot instantiate the API Base class directory.'
                'This is an abstract class.  You should perform '
                'actions on its subclasses (e.g. Charge, Customer).')
        return util.utf8(resource_path)
Exemple #10
0
    def _class_name(cls, resource_path):
        """
        Summary.

        Args:
            resource_path (TYPE): Description

        Raises:
            error.APIError: Description

        Returns:
            name (TYPE): Description
        """
        if cls == BaseAPIResource:
            raise error.APIError(
                'You cannot instantiate the API Base class directory.'
                'This is an abstract class.  You should perform '
                'actions on its subclasses (e.g. Charge, Customer).')
        return util.utf8(resource_path)
Exemple #11
0
    def __init__(self, api_secret, reference=None,
                 resource_path='transaction', *args, **kwargs):
        """
        Create a TransactionResource instance.

        Args:
            api_secret (string): Developer's API SECRET_KEY.
            reference (string, optional): Unique transaction reference.
            resource_path (str, optional): API resource_path. Do not change.
            *args: Extra positional arguments.
            **kwargs: Extra keyworded arguments.
        """
        super(TransactionResource, self)\
            .__init__(api_secret, resource_path, *args, **kwargs)
        self.reference = util.utf8(reference)  # pragma no cover
        self.authorization_url = None  # pragma no cover
        self.access_code = None  # pragma no cover
        self.email = None  # pragma no cover
        self.amount = None  # pragma no cover
        self.authorization_code = None  # pragma no cover
Exemple #12
0
    def __init__(self, api_secret, reference=None,
                 resource_path='transaction', *args, **kwargs):
        """
        Create a TransactionResource instance.

        Args:
            api_secret (string): Developer's API SECRET_KEY.
            reference (string, optional): Unique transaction reference.
            resource_path (str, optional): API resource_path. Do not change.
            *args: Extra positional arguments.
            **kwargs: Extra keyworded arguments.
        """
        super(TransactionResource, self)\
            .__init__(api_secret, resource_path, *args, **kwargs)
        self.reference = util.utf8(reference)  # pragma no cover
        self.authorization_url = None  # pragma no cover
        self.access_code = None  # pragma no cover
        self.email = None  # pragma no cover
        self.amount = None  # pragma no cover
        self.authorization_code = None  # pragma no cover