def test_restful_perform_action(self, mock_send_request): try: model = Restful() self.assertRaises(dockercloud.ApiError, model._perform_action, 'action') model.endpoint = 'fake' model.subsystem = "subsystem" model._detail_uri = "/".join([ "api", model.subsystem, model._api_version, model.endpoint.lstrip("/"), model.pk ]) mock_send_request.side_effect = [{'key': 'value'}, None] self.assertTrue( model._perform_action('action', params={'k': 'v'}, data={'key': 'value'})) self.assertEqual('value', model.key) mock_send_request.assert_called_with( 'POST', "/".join([model._detail_uri, "action"]), data={'key': 'value'}, params={'k': 'v'}) self.assertFalse(model._perform_action('action', {'key': 'value'})) finally: if hasattr(Restful, 'endpoint'): delattr(Restful, 'endpoint')
def test_restful_expand_attribute(self, mock_send_request): model = Restful() self.assertRaises(dockercloud.ApiError, model._expand_attribute, "attribute") model._detail_uri = "fake/uuid" mock_send_request.side_effect = [{"key": "value"}, None] self.assertEqual("value", model._expand_attribute("key")) self.assertIsNone(model._expand_attribute("key"))
def test_restful_expand_attribute(self, mock_send_request): model = Restful() self.assertRaises(dockercloud.ApiError, model._expand_attribute, 'attribute') model._detail_uri = 'fake/uuid' mock_send_request.side_effect = [{'key': 'value'}, None] self.assertEqual('value', model._expand_attribute('key')) self.assertIsNone(model._expand_attribute('key'))
def test_restful_perform_action(self, mock_send_request): try: model = Restful() self.assertRaises(dockercloud.ApiError, model._perform_action, "action") model.endpoint = "fake" model.subsystem = "subsystem" model._detail_uri = "/".join( ["api", model.subsystem, model._api_version, model.endpoint.lstrip("/"), model.pk] ) mock_send_request.side_effect = [{"key": "value"}, None] self.assertTrue(model._perform_action("action", params={"k": "v"}, data={"key": "value"})) self.assertEqual("value", model.key) mock_send_request.assert_called_with( "POST", "/".join([model._detail_uri, "action"]), data={"key": "value"}, params={"k": "v"} ) self.assertFalse(model._perform_action("action", {"key": "value"})) finally: if hasattr(Restful, "endpoint"): delattr(Restful, "endpoint")