def test_error_on_missing_client_secret(self): with self.assertRaises(ConfigurationError) as error: parser = CredentialsParser(client_id="client_id$development$integration_client_id", client_secret=None) parser.parse_client_credentials() config_error = error.exception self.assertIn("Missing client_secret", config_error.message)
def __init__(self, environment=None, merchant_id=None, public_key=None, private_key=None, client_id=None, client_secret=None, access_token=None, *args, **kwargs): if len(args) == 2: public_key, private_key = args parser = CredentialsParser(client_id=client_id, client_secret=client_secret, access_token=access_token) if parser.access_token is not None: parser.parse_access_token() self.environment = parser.environment self.merchant_id = parser.merchant_id elif (parser.client_id is not None or parser.client_secret is not None): parser.parse_client_credentials() self.environment = parser.environment self.merchant_id = merchant_id else: self.environment = Environment.parse_environment(environment) self.merchant_id = merchant_id self.public_key = public_key self.private_key = private_key self.client_id = parser.client_id self.client_secret = parser.client_secret self.access_token = parser.access_token self.timeout = kwargs.get("timeout", 60) self.wrap_http_exceptions = kwargs.get("wrap_http_exceptions", False) http_strategy = kwargs.get("http_strategy", None) if http_strategy: self._http_strategy = http_strategy(self, self.environment) else: self._http_strategy = self.http()
def __init__(self, environment=None, merchant_id=None, public_key=None, private_key=None, client_id=None, client_secret=None, access_token=None, *args, **kwargs): if len(args) == 2: public_key, private_key = args parser = CredentialsParser(client_id=client_id, client_secret=client_secret, access_token=access_token) if parser.access_token is not None: parser.parse_access_token() self.environment = parser.environment self.merchant_id = parser.merchant_id elif (parser.client_id is not None or parser.client_secret is not None): parser.parse_client_credentials() self.environment = parser.environment self.merchant_id = merchant_id else: self.environment = environment self.merchant_id = merchant_id self.public_key = public_key self.private_key = private_key self.client_id = parser.client_id self.client_secret = parser.client_secret self.access_token = parser.access_token self.timeout = kwargs.get("timeout", 60) self.wrap_http_exceptions = kwargs.get("wrap_http_exceptions", False) http_strategy = kwargs.get("http_strategy", None) if http_strategy: self._http_strategy = http_strategy(self, self.environment) else: self._http_strategy = self.http()
def test_error_on_missing_client_secret(self): with self.assertRaises(ConfigurationError) as error: parser = CredentialsParser( client_id="client_id$development$integration_client_id", client_secret=None) parser.parse_client_credentials() config_error = error.exception self.assertIn("Missing client_secret", str(config_error))
def test_error_on_invalid_client_secret(self): with self.assertRaises(ConfigurationError) as error: parser = CredentialsParser( client_id="client_id$development$integration_client_id", client_secret="client_id$development$integration_client_secret" ) parser.parse_client_credentials() config_error = error.exception self.assertIn("Value passed for client_secret is not a client_secret", str(config_error))
def test_parses_client_credentials(self): parser = CredentialsParser( client_id="client_id$development$integration_client_id", client_secret="client_secret$development$integration_client_secret" ) parser.parse_client_credentials() self.assertEqual("client_id$development$integration_client_id", parser.client_id) self.assertEqual("client_secret$development$integration_client_secret", parser.client_secret) self.assertEqual(braintree.Environment.Development, parser.environment)
def test_error_on_inconsistent_environment(self): with self.assertRaises(ConfigurationError) as error: parser = CredentialsParser( client_id="client_id$qa$integration_client_id", client_secret="client_secret$development$integration_client_secret" ) parser.parse_client_credentials() config_error = error.exception self.assertIn("Mismatched credential environments", str(config_error))
def test_error_on_inconsistent_environment(self): with self.assertRaises(ConfigurationError) as error: parser = CredentialsParser( client_id="client_id$qa$integration_client_id", client_secret= "client_secret$development$integration_client_secret") parser.parse_client_credentials() config_error = error.exception self.assertIn("Mismatched credential environments", str(config_error))