コード例 #1
0
    def test_doesnt_use_signature_already_in_url_to_check_for_valid_signature_with_post_data(self):
        url_with_sig = "{url}?{signature_param}={signature}".format(
            url=self.url_two,
            signature_param=constants.SIGNATURE_PARAM_NAME,
            signature=self.signature_two,
        )

        signature_valid = check_signature.check_signature(self.signature_two, self.TEST_PRIVATE_KEY, url_with_sig, self.url_post_data)
        self.assertEqual(True, signature_valid)
コード例 #2
0
    def test_doesnt_use_signature_already_in_url_to_check_for_valid_signature(self):
        url_with_sig = "{url}&{signature_param}={signature}".format(
            url=self.url_one,
            signature_param=constants.SIGNATURE_PARAM_NAME,
            signature=self.signature_one,
        )

        signature_valid = check_signature.check_signature(self.signature_one, self.TEST_PRIVATE_KEY, url_with_sig, None)
        self.assertEqual(True, signature_valid)
コード例 #3
0
 def test_returns_false_when_signatures_dont_match(self):
     bad_signature = "ABCc0hS02rVC3016krevud1aW9B6Ls0Tp4_XcezuXYZ="
     signature_valid = check_signature.check_signature(bad_signature, self.TEST_PRIVATE_KEY, self.url_one, None)
     self.assertEqual(False, signature_valid)
コード例 #4
0
 def test_returns_true_when_signatures_match_and_has_post_data(self):
     signature_valid = check_signature.check_signature(self.signature_two, self.TEST_PRIVATE_KEY, self.url_two, self.url_post_data)
     self.assertEqual(True, signature_valid)
コード例 #5
0
 def test_returns_true_when_private_key_built_from_base64_url_encoded_string(self):
     base64_private_key = base64.urlsafe_b64encode('Private Key')
     signature_valid = check_signature.check_signature(self.signature_one, base64_private_key, self.url_one, None)
     self.assertEqual(True, signature_valid)
コード例 #6
0
 def signature_was_valid(self):
     if self.client:
         return check_signature(self.signature, self.client.private_key, self.url_path, self.request_data)
コード例 #7
0
 def test_returns_false_when_signatures_dont_match(self):
     bad_signature = "ABCc0hS02rVC3016krevud1aW9B6Ls0Tp4_XcezuXYZ="
     signature_valid = check_signature.check_signature(
         bad_signature, self.TEST_PRIVATE_KEY, self.url_one, None)
     self.assertEqual(False, signature_valid)
コード例 #8
0
 def test_returns_true_when_signatures_match_and_has_post_data(self):
     signature_valid = check_signature.check_signature(
         self.signature_two, self.TEST_PRIVATE_KEY, self.url_two,
         self.url_post_data)
     self.assertEqual(True, signature_valid)
コード例 #9
0
 def test_returns_true_when_private_key_built_from_base64_url_encoded_string(
         self):
     base64_private_key = base64.urlsafe_b64encode(b'Private Key')
     signature_valid = check_signature.check_signature(
         self.signature_one, base64_private_key, self.url_one, {})
     self.assertEqual(True, signature_valid)
コード例 #10
0
 def signature_was_valid(self):
     if self.client:
         return check_signature(self.signature, self.client.private_key,
                                self.url_path, self.request_data)
コード例 #11
0
 def unquote_base_url(self):
     url, query = self.url_path.split('?')
     return check_signature(
         self.signature, self.client.private_key, '{}?{}'.format(unquote(url), query), self.request_data
     )
コード例 #12
0
 def signature_was_valid(self):
     if self.client:
         result = check_signature(self.signature, self.client.private_key, self.url_path, self.request_data)
         return result or check_signature(
             self.signature, self.client.private_key, unquote(self.url_path), self.request_data
         ) or self.unquote_base_url