def test_extract_params_from_request_bad_request_param(self): """ Can extract params correctly """ client = RecaptchaClient() success, params = client._extract_params_from_request('request') self.assertFalse(success) self.assertEqual(params, {})
def test_extract_params_from_request_no_recaptcha_data(self): """ test calling with a request that does not have a recaptcha key in """ client = RecaptchaClient() request_data = {'some_key': 1} request = httpserver.HTTPRequest('POST', 'http://someurl.com', body=json.dumps(request_data)) success, params = client._extract_params_from_request(request) self.assertFalse(success) self.assertEqual(params, {})
def test_extract_params_from_request_missing_recaptcha_data(self): """ test having a missing recaptcha params """ client = RecaptchaClient() request_data = { 'recaptcha': { 'challenge': 'are you the gatekeeper?', 'wrong_key': 'no'}} request = httpserver.HTTPRequest('POST', 'http://someurl.com', body=json.dumps(request_data)) success, params = client._extract_params_from_request(request) self.assertFalse(success) self.assertEqual(params, {})
def test_extract_params_from_request(self): """ test successful extraction """ client = RecaptchaClient() request_data = { 'recaptcha': { 'challenge': 'are you the gatekeeper?', 'response': 'no'}} request = httpserver.HTTPRequest('POST', 'http://someurl.com', body=json.dumps(request_data), remote_ip='123.123.123.123') success, params = client._extract_params_from_request(request) self.assertTrue(success) expected_params = { 'challenge': 'are you the gatekeeper?', 'response': 'no', 'remoteip': '123.123.123.123'} self.assertEqual(params, expected_params)