1 from __future__ import absolute_import
9 from oslo_serialization import jsonutils
11 from yardstick.common import constants as consts
14 class APITestCase(unittest.TestCase):
17 self.db_fd, self.db_path = tempfile.mkstemp()
18 consts.SQLITE = 'sqlite:///{}'.format(self.db_path)
20 # server calls gethostbyname which takes 4 seconds, and we should mock it anyway
21 self.socket_mock = mock.patch.dict("sys.modules", {"socket": mock.MagicMock(
22 **{"gethostbyname.return_value": "127.0.0.1", "gethostname.return_value": "localhost"})})
23 self.socket_mock.start()
25 from api import server
26 except socket.gaierror:
30 server.app.config['TESTING'] = True
31 self.app = server.app.test_client()
37 os.unlink(self.db_path)
38 self.socket_mock.stop()
40 def _post(self, url, data):
41 headers = {'Content-Type': 'application/json'}
42 resp = self.app.post(url, data=jsonutils.dumps(data), headers=headers)
43 return jsonutils.loads(resp.data)
46 resp = self.app.get(url)
47 return jsonutils.loads(resp.data)