def test_sendall_double(self): Entry.register(Entry.GET, 'http://testme.org/', Response(status=404), Response()) self.assertRaises(HTTPError, urlopen, 'http://testme.org/') response = urlopen('http://testme.org/') self.assertEqual(response.code, 200) response = urlopen('http://testme.org/') self.assertEqual(response.code, 200) self.assertEqual(len(Mocket._requests), 3)
def test_sendall_double(self): Entry.register(Entry.GET, 'http://testme.org/', Response(status=404), Response()) self.assertRaises(HTTPError, urlopen, 'http://testme.org/') response = urlopen('http://testme.org/') self.assertEqual(response.code, 200) response = urlopen('http://testme.org/') self.assertEqual(response.code, 200) self.assertEqual(len(Mocket._requests), 3)
def test_request_bodies(self): url = 'http://bit.ly/fakeurl/{0}' for e in range(5): u = url.format(e) Entry.single_register(Entry.POST, u, body=str(e)) request_body = urlencode({'key-{0}'.format(e): 'value={0}'.format(e)}) urlopen(u, request_body.encode('utf-8')) last_request = Mocket.last_request() assert last_request.body == request_body
def test_request_bodies(self): url = "http://bit.ly/fakeurl/{0}" for e in range(5): u = url.format(e) Entry.single_register(Entry.POST, u, body=str(e)) request_body = urlencode({"key-{0}".format(e): "value={0}".format(e)}) urlopen(u, request_body.encode("utf-8")) last_request = Mocket.last_request() assert last_request.body == request_body
def test_sendall_json(self): with mock.patch("time.gmtime") as tt: tt.return_value = time.struct_time((2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register( Entry.GET, "http://testme.org/get?a=1&b=2#test", body='{"a": "€"}', headers={"content-type": "application/json"}, ) response = urlopen("http://testme.org/get?b=2&a=1#test", timeout=10) self.assertEqual(response.code, 200) self.assertEqual(response.read(), b'{"a": "\xe2\x82\xac"}') self.assertEqualHeaders( dict(response.headers), { "status": "200", "content-length": "12", "server": "Python/Mocket", "connection": "close", "date": "Tue, 30 Apr 2013 10:39:21 GMT", "content-type": "application/json", }, ) self.assertEqual(len(Mocket._requests), 1)
def test_truesendall_with_recording(self): url = "http://httpbin.org/ip" urlopen(url) requests.get(url) resp = urlopen(url) self.assertEqual(resp.code, 200) resp = requests.get(url) self.assertEqual(resp.status_code, 200) assert "origin" in resp.json() dump_filename = os.path.join(Mocket.get_truesocket_recording_dir(), Mocket.get_namespace() + ".json") with io.open(dump_filename) as f: responses = json.load(f) self.assertEqual(len(responses["httpbin.org"]["80"].keys()), 2)
def test_truesendall_with_recording(self): url = 'http://httpbin.org/ip' urlopen(url) requests.get(url) resp = urlopen(url) self.assertEqual(resp.code, 200) resp = requests.get(url) self.assertEqual(resp.status_code, 200) assert 'origin' in resp.json() dump_filename = os.path.join( Mocket.get_truesocket_recording_dir(), Mocket.get_namespace() + '.json', ) with io.open(dump_filename) as f: responses = json.load(f) self.assertEqual(len(responses['httpbin.org']['80'].keys()), 2)
def test_json(response): url_to_mock = 'https://testme.org/json' Entry.single_register(Entry.GET, url_to_mock, body=json.dumps(response), headers={'content-type': 'application/json'}) mocked_response = requests.get(url_to_mock).json() assert response == mocked_response mocked_response = json.loads(urlopen(url_to_mock).read().decode('utf-8')) assert response == mocked_response
def test_json(response): url_to_mock = 'https://testme.org/json' Entry.single_register( Entry.GET, url_to_mock, body=json.dumps(response), headers={'content-type': 'application/json'}) mocked_response = requests.get(url_to_mock).json() assert response == mocked_response mocked_response = json.loads(urlopen(url_to_mock).read().decode('utf-8')) assert response == mocked_response
def test_sendall(self): with mock.patch('time.gmtime') as tt: tt.return_value = time.struct_time((2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register(Entry.GET, 'http://testme.org/get/p/?a=1&b=2', body='test_body') resp = urlopen('http://testme.org/get/p/?b=2&a=1', timeout=10) self.assertEqual(resp.code, 200) self.assertEqual(resp.read(), b'test_body') self.assertEqualHeaders(dict(resp.headers), { u'Status': u'200', u'Content-length': u'9', u'Server': u'Python/Mocket', u'Connection': u'close', u'Date': u'Tue, 30 Apr 2013 10:39:21 GMT', u'Content-type': u'text/plain; charset=utf-8' }) self.assertEqual(len(Mocket._requests), 1)
def test_sendall(self): with mock.patch('time.gmtime') as tt: tt.return_value = time.struct_time( (2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register(Entry.GET, 'http://testme.org/get/p/?a=1&b=2', body='test_body') resp = urlopen('http://testme.org/get/p/?b=2&a=1', timeout=10) self.assertEqual(resp.code, 200) self.assertEqual(resp.read(), b'test_body') self.assertEqualHeaders( dict(resp.headers), { u'Status': u'200', u'Content-length': u'9', u'Server': u'Python/Mocket', u'Connection': u'close', u'Date': u'Tue, 30 Apr 2013 10:39:21 GMT', u'Content-type': u'text/plain; charset=utf-8' }) self.assertEqual(len(Mocket._requests), 1)
def test_sendall(self): with mock.patch("time.gmtime") as tt: tt.return_value = time.struct_time((2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register( Entry.GET, "http://testme.org/get/p/?a=1&b=2", body="test_body" ) resp = urlopen("http://testme.org/get/p/?b=2&a=1", timeout=10) self.assertEqual(resp.code, 200) self.assertEqual(resp.read(), b"test_body") self.assertEqualHeaders( dict(resp.headers), { "Status": "200", "Content-length": "9", "Server": "Python/Mocket", "Connection": "close", "Date": "Tue, 30 Apr 2013 10:39:21 GMT", "Content-type": "text/plain; charset=utf-8", }, ) self.assertEqual(len(Mocket._requests), 1)
def test_sendall_json(self): with mock.patch('time.gmtime') as tt: tt.return_value = time.struct_time((2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register( Entry.GET, 'http://testme.org/get?a=1&b=2#test', body='{"a": "€"}', headers={'content-type': 'application/json'} ) response = urlopen('http://testme.org/get?b=2&a=1#test', timeout=10) self.assertEqual(response.code, 200) self.assertEqual(response.read(), b'{"a": "\xe2\x82\xac"}') self.assertEqualHeaders(dict(response.headers), { u'status': u'200', u'content-length': u'12', u'server': u'Python/Mocket', u'connection': u'close', u'date': u'Tue, 30 Apr 2013 10:39:21 GMT', u'content-type': u'application/json', }) self.assertEqual(len(Mocket._requests), 1)
def test_sendall_json(self): with mock.patch('time.gmtime') as tt: tt.return_value = time.struct_time( (2013, 4, 30, 10, 39, 21, 1, 120, 0)) Entry.single_register(Entry.GET, 'http://testme.org/get?a=1&b=2#test', body='{"a": "€"}', headers={'content-type': 'application/json'}) response = urlopen('http://testme.org/get?b=2&a=1#test', timeout=10) self.assertEqual(response.code, 200) self.assertEqual(response.read(), b'{"a": "\xe2\x82\xac"}') self.assertEqualHeaders( dict(response.headers), { u'status': u'200', u'content-length': u'12', u'server': u'Python/Mocket', u'connection': u'close', u'date': u'Tue, 30 Apr 2013 10:39:21 GMT', u'content-type': u'application/json', }) self.assertEqual(len(Mocket._requests), 1)
def test_wrongpath_truesendall(self): Entry.register(Entry.GET, "http://httpbin.org/user.agent", Response(status=404)) response = urlopen("http://httpbin.org/ip") self.assertEqual(response.code, 200)
def test_truesendall(self): url = "http://httpbin.org/ip" resp = urlopen(url) self.assertEqual(resp.code, 200) resp = requests.get(url) self.assertEqual(resp.status_code, 200)
def test_truesendall(self): url = 'http://httpbin.org/ip' resp = urlopen(url) self.assertEqual(resp.code, 200) resp = requests.get(url) self.assertEqual(resp.status_code, 200)
def test_wrongpath_truesendall(self): Entry.register(Entry.GET, 'http://httpbin.org/user.agent', Response(status=404)) response = urlopen('http://httpbin.org/ip') self.assertEqual(response.code, 200)