def test_perform_request_with_error(self): server = MockServer() server.start() req = EobotRequest() req.set_base_url('http://localhost:{0}/api.test'.format(server.port)) req.set_parameter("nosuch", "page") with self.assertRaises(RuntimeError): req.perform_request() server.stop()
def test_get_parameters(self): req = EobotRequest() self.assertIsInstance(req.get_parameters(), dict) self.assertEqual(0, len(req.get_parameters())) req.set_parameters({"key": "value"}) self.assertEqual(1, len(req.get_parameters())) self.assertIn("key", req.get_parameters().keys()) self.assertEqual("value", req.get_parameters()["key"]) req.set_parameter("key_2", "value_2") self.assertEqual(2, len(req.get_parameters())) self.assertIn("key", req.get_parameters().keys()) self.assertEqual("value", req.get_parameters()["key"]) self.assertIn("key_2", req.get_parameters().keys()) self.assertEqual("value_2", req.get_parameters()["key_2"])
def test_perform_request(self): server = MockServer() server.start() req = EobotRequest() req.set_base_url('http://localhost:{0}/api.test'.format(server.port)) req.set_parameter("coin", "BTC") response = req.perform_request() server.stop() self.assertIsInstance(response, dict) self.assertIn("BTC", response) self.assertIsInstance(response["BTC"], float) self.assertEqual(100.0, response["BTC"])
def test_set_parameter_with_valid_arguments(self): req = EobotRequest() req.set_parameter("key", "value") self.assertEqual(1, len(req._parameters)) self.assertIn("key", req._parameters.keys()) self.assertEqual("value", req._parameters["key"])
def test_set_parameters_with_invalid_key(self): req = EobotRequest() with self.assertRaises(ValueError): # noinspection PyTypeChecker req.set_parameter(123, 456)
def test_set_parameter_with_key_without_value(self): req = EobotRequest() with self.assertRaises(TypeError): # noinspection PyArgumentList req.set_parameter("key")