diff --git a/freezerclient/shell.py b/freezerclient/shell.py index aba0989..5f08bab 100644 --- a/freezerclient/shell.py +++ b/freezerclient/shell.py @@ -16,8 +16,8 @@ import logging import os import sys -from cliff.app import App -from cliff.commandmanager import CommandManager +from cliff import app +from cliff import commandmanager from freezerclient.v1 import actions from freezerclient.v1 import backups @@ -32,7 +32,7 @@ log = logging.getLogger(__name__) logging.getLogger('requests').setLevel(logging.WARN) -class FreezerCommandManager(CommandManager): +class FreezerCommandManager(commandmanager.CommandManager): """All commands available for the shell are registered here""" SHELL_COMMANDS = { 'job-show': jobs.JobShow, @@ -70,7 +70,7 @@ class FreezerCommandManager(CommandManager): self.add_command(name, command_class) -class FreezerShell(App): +class FreezerShell(app.App): def __init__(self): super(FreezerShell, self).__init__( description='Python Freezer Client', diff --git a/freezerclient/tests/unit/v1/test_client.py b/freezerclient/tests/unit/v1/test_client.py index 1c634de..fecaf81 100644 --- a/freezerclient/tests/unit/v1/test_client.py +++ b/freezerclient/tests/unit/v1/test_client.py @@ -13,85 +13,84 @@ # limitations under the License. +import mock import unittest from freezerclient.v1 import client -from mock import Mock, patch - class TestSupportFunctions(unittest.TestCase): def test_guess_auth_version_returns_none(self): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '' mock_opts.os_auth_url = '' self.assertRaises(Exception, client.guess_auth_version, mock_opts) def test_guess_auth_version_explicit_3(self): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '3' self.assertEqual(client.guess_auth_version(mock_opts), '3') def test_guess_auth_version_explicit_2(self): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '2.0' self.assertEqual(client.guess_auth_version(mock_opts), '2.0') def test_guess_auth_version_implicit_3(self): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_auth_url = 'http://whatever/v3' self.assertEqual(client.guess_auth_version(mock_opts), '3') def test_guess_auth_version_implicit_2(self): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_auth_url = 'http://whatever/v2.0' self.assertEqual(client.guess_auth_version(mock_opts), '2.0') - @patch('freezerclient.v1.client.v3') - @patch('freezerclient.v1.client.v2') + @mock.patch('freezerclient.v1.client.v3') + @mock.patch('freezerclient.v1.client.v2') def test_get_auth_plugin_v3_Password(self, mock_v2, mock_v3): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '3' mock_opts.os_user_name = 'myuser' mock_opts.os_token = '' client.get_auth_plugin(mock_opts) self.assertTrue(mock_v3.Password.called) - @patch('freezerclient.v1.client.v3') - @patch('freezerclient.v1.client.v2') + @mock.patch('freezerclient.v1.client.v3') + @mock.patch('freezerclient.v1.client.v2') def test_get_auth_plugin_v3_Token(self, mock_v2, mock_v3): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '3' mock_opts.os_username = '' mock_opts.os_token = 'mytoken' client.get_auth_plugin(mock_opts) self.assertTrue(mock_v3.Token.called) - @patch('freezerclient.v1.client.v3') - @patch('freezerclient.v1.client.v2') + @mock.patch('freezerclient.v1.client.v3') + @mock.patch('freezerclient.v1.client.v2') def test_get_auth_plugin_v2_Password(self, mock_v2, mock_v3): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '2.0' mock_opts.os_user_name = 'myuser' mock_opts.os_token = '' client.get_auth_plugin(mock_opts) self.assertTrue(mock_v2.Password.called) - @patch('freezerclient.v1.client.v3') - @patch('freezerclient.v1.client.v2') + @mock.patch('freezerclient.v1.client.v3') + @mock.patch('freezerclient.v1.client.v2') def test_get_auth_plugin_v2_Token(self, mock_v2, mock_v3): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '2.0' mock_opts.os_username = '' mock_opts.os_token = 'mytoken' client.get_auth_plugin(mock_opts) self.assertTrue(mock_v2.Token.called) - @patch('freezerclient.v1.client.v3') - @patch('freezerclient.v1.client.v2') + @mock.patch('freezerclient.v1.client.v3') + @mock.patch('freezerclient.v1.client.v2') def test_get_auth_plugin_raises_when_no_username_token(self, mock_v2, mock_v3): - mock_opts = Mock() + mock_opts = mock.Mock() mock_opts.os_identity_api_version = '2.0' mock_opts.os_username = '' mock_opts.os_token = '' @@ -100,14 +99,14 @@ class TestSupportFunctions(unittest.TestCase): class TestClientMock(unittest.TestCase): - @patch('freezerclient.v1.client.ksa_session') - @patch('freezerclient.v1.client.get_auth_plugin') + @mock.patch('freezerclient.v1.client.ksa_session') + @mock.patch('freezerclient.v1.client.get_auth_plugin') def test_client_new(self, mock_get_auth_plugin, mock_ksa_session): c = client.Client(endpoint='blabla', auth_url='blabla') self.assertIsInstance(c, client.Client) - @patch('freezerclient.v1.client.ksa_session') - @patch('freezerclient.v1.client.get_auth_plugin') + @mock.patch('freezerclient.v1.client.ksa_session') + @mock.patch('freezerclient.v1.client.get_auth_plugin') def test_client_new_with_kwargs(self, mock_get_auth_plugin, mock_ksa_session): kwargs = {'token': 'alpha', 'username': 'bravo', @@ -128,22 +127,22 @@ class TestClientMock(unittest.TestCase): self.assertEqual('foxtrot', c.session) self.assertEqual('golf', c.endpoint) - @patch('freezerclient.v1.client.ksa_session') - @patch('freezerclient.v1.client.get_auth_plugin') + @mock.patch('freezerclient.v1.client.ksa_session') + @mock.patch('freezerclient.v1.client.get_auth_plugin') def test_get_token(self, mock_get_auth_plugin, mock_ksa_session): - mock_session = Mock() + mock_session = mock.Mock() mock_session.get_token.return_value = 'antaniX2' c = client.Client(session=mock_session, endpoint='justtest', auth_url='blabla') self.assertIsInstance(c, client.Client) self.assertEqual(c.auth_token, 'antaniX2') - @patch('freezerclient.v1.client.socket') - @patch('freezerclient.v1.client.ksa_session') - @patch('freezerclient.v1.client.get_auth_plugin') + @mock.patch('freezerclient.v1.client.socket') + @mock.patch('freezerclient.v1.client.ksa_session') + @mock.patch('freezerclient.v1.client.get_auth_plugin') def test_get_client_id(self, mock_get_auth_plugin, mock_ksa_session, mock_socket): mock_socket.gethostname.return_value = 'parmenide' - mock_session = Mock() + mock_session = mock.Mock() mock_session.get_project_id.return_value = 'H2O' c = client.Client(session=mock_session, endpoint='justtest', auth_url='blabla') diff --git a/freezerclient/tests/unit/v1/test_client_actions.py b/freezerclient/tests/unit/v1/test_client_actions.py index 639576e..e5c3da7 100644 --- a/freezerclient/tests/unit/v1/test_client_actions.py +++ b/freezerclient/tests/unit/v1/test_client_actions.py @@ -13,25 +13,24 @@ # limitations under the License. +import mock import unittest from freezerclient import exceptions from freezerclient.v1.managers import actions -from mock import Mock, patch - class TestActionManager(unittest.TestCase): def setUp(self): - self.mock_client = Mock() - self.mock_response = Mock() + self.mock_client = mock.Mock() + self.mock_response = mock.Mock() self.mock_client.endpoint = 'http://testendpoint:9999' self.mock_client.auth_token = 'testtoken' self.mock_client.client_id = 'test_client_id_78900987' self.action_manager = actions.ActionManager(self.mock_client) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_create(self, mock_requests): self.assertEqual('http://testendpoint:9999/v1/actions/', self.action_manager.endpoint) self.assertEqual({'X-Auth-Token': 'testtoken', @@ -39,7 +38,7 @@ class TestActionManager(unittest.TestCase): 'Accept': 'application/json'}, self.action_manager.headers) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_create_ok(self, mock_requests): self.mock_response.status_code = 201 self.mock_response.json.return_value = {'action_id': 'qwerqwer'} @@ -47,26 +46,26 @@ class TestActionManager(unittest.TestCase): retval = self.action_manager.create({'action': 'metadata'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_create_fail_when_api_return_error_code(self, mock_requests): self.mock_response.status_code = 500 mock_requests.post.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.action_manager.create, {'action': 'metadata'}) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_delete_ok(self, mock_requests): self.mock_response.status_code = 204 mock_requests.delete.return_value = self.mock_response retval = self.action_manager.delete('test_action_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_delete_fail(self, mock_requests): self.mock_response.status_code = 500 mock_requests.delete.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.action_manager.delete, 'test_action_id') - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_get_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = {'action_id': 'qwerqwer'} @@ -74,20 +73,20 @@ class TestActionManager(unittest.TestCase): retval = self.action_manager.get('test_action_id') self.assertEqual({'action_id': 'qwerqwer'}, retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_get_fails_on_error_different_from_404(self, mock_requests): self.mock_response.status_code = 500 mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.action_manager.get, 'test_action_id') - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_get_none(self, mock_requests): self.mock_response.status_code = 404 mock_requests.get.return_value = self.mock_response retval = self.action_manager.get('test_action_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_list_ok(self, mock_requests): self.mock_response.status_code = 200 action_list = [{'action_id_0': 'bomboloid'}, {'action_id_1': 'asdfasdf'}] @@ -96,7 +95,7 @@ class TestActionManager(unittest.TestCase): retval = self.action_manager.list() self.assertEqual(action_list, retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_list_error(self, mock_requests): self.mock_response.status_code = 404 action_list = [{'action_id_0': 'bomboloid'}, {'action_id_1': 'asdfasdf'}] @@ -104,7 +103,7 @@ class TestActionManager(unittest.TestCase): mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.action_manager.list) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_update_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = { @@ -116,7 +115,7 @@ class TestActionManager(unittest.TestCase): retval = self.action_manager.update('d454beec-1f3c-4d11-aa1a-404116a40502', {'status': 'bamboozled'}) self.assertEqual(12, retval) - @patch('freezerclient.v1.managers.actions.requests') + @mock.patch('freezerclient.v1.managers.actions.requests') def test_update_raise_MetadataUpdateFailure_when_api_return_error_code(self, mock_requests): self.mock_response.json.return_value = { "patch": {"status": "bamboozled"}, diff --git a/freezerclient/tests/unit/v1/test_client_backups.py b/freezerclient/tests/unit/v1/test_client_backups.py index cc758b6..039465f 100644 --- a/freezerclient/tests/unit/v1/test_client_backups.py +++ b/freezerclient/tests/unit/v1/test_client_backups.py @@ -13,23 +13,22 @@ # limitations under the License. +import mock import unittest from freezerclient import exceptions from freezerclient.v1.managers import backups -from mock import Mock, patch - class TestBackupManager(unittest.TestCase): def setUp(self): - self.mock_client = Mock() + self.mock_client = mock.Mock() self.mock_client.endpoint = 'http://testendpoint:9999' self.mock_client.auth_token = 'testtoken' self.b = backups.BackupsManager(self.mock_client) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_create(self, mock_requests): self.assertEqual('http://testendpoint:9999/v1/backups/', self.b.endpoint) self.assertEqual({'X-Auth-Token': 'testtoken', @@ -37,65 +36,65 @@ class TestBackupManager(unittest.TestCase): 'Accept': 'application/json'}, self.b.headers) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_create_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 201 mock_response.json.return_value = {'backup_id': 'qwerqwer'} mock_requests.post.return_value = mock_response retval = self.b.create(backup_metadata={'backup': 'metadata'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_create_fail_when_api_return_error_code(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 500 mock_requests.post.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.b.create, {'backup': 'metadata'}) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_delete_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 204 mock_requests.delete.return_value = mock_response retval = self.b.delete('test_backup_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_delete_fail(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 500 mock_requests.delete.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.b.delete, 'test_backup_id') - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_get_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 200 mock_response.json.return_value = {'backup_id': 'qwerqwer'} mock_requests.get.return_value = mock_response retval = self.b.get('test_backup_id') self.assertEqual({'backup_id': 'qwerqwer'}, retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_get_none(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 404 mock_requests.get.return_value = mock_response retval = self.b.get('test_backup_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_get_error(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 403 mock_requests.get.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.b.get, 'test_backup_id') - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_list_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 200 backup_list = [{'backup_id_0': 'qwerqwer'}, {'backup_id_1': 'asdfasdf'}] mock_response.json.return_value = {'backups': backup_list} @@ -103,9 +102,9 @@ class TestBackupManager(unittest.TestCase): retval = self.b.list() self.assertEqual(backup_list, retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_list_parameters(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 200 backup_list = [{'backup_id_0': 'qwerqwer'}, {'backup_id_1': 'asdfasdf'}] mock_response.json.return_value = {'backups': backup_list} @@ -123,9 +122,9 @@ class TestBackupManager(unittest.TestCase): verify=True) self.assertEqual(backup_list, retval) - @patch('freezerclient.v1.managers.backups.requests') + @mock.patch('freezerclient.v1.managers.backups.requests') def test_list_error(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 404 backup_list = [{'backup_id_0': 'qwerqwer'}, {'backup_id_1': 'asdfasdf'}] mock_response.json.return_value = {'backups': backup_list} diff --git a/freezerclient/tests/unit/v1/test_client_clients.py b/freezerclient/tests/unit/v1/test_client_clients.py index 629ea3a..e5c1f12 100644 --- a/freezerclient/tests/unit/v1/test_client_clients.py +++ b/freezerclient/tests/unit/v1/test_client_clients.py @@ -12,23 +12,22 @@ # See the License for the specific language governing permissions and # limitations under the License. +import mock import unittest from freezerclient import exceptions from freezerclient.v1.client import clients -from mock import Mock, patch - class TestClientManager(unittest.TestCase): def setUp(self): - self.mock_client = Mock() + self.mock_client = mock.Mock() self.mock_client.endpoint = 'http://testendpoint:9999' self.mock_client.auth_token = 'testtoken' self.r = clients.ClientManager(self.mock_client) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_create(self, mock_requests): self.assertEqual('http://testendpoint:9999/v1/clients/', self.r.endpoint) self.assertEqual({'X-Auth-Token': 'testtoken', @@ -36,64 +35,64 @@ class TestClientManager(unittest.TestCase): 'Accept': 'application/json'}, self.r.headers) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_create_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 201 mock_response.json.return_value = {'client_id': 'qwerqwer'} mock_requests.post.return_value = mock_response retval = self.r.create(client_info={'client': 'metadata'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_create_fail_when_api_return_error_code(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 500 mock_requests.post.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.r.create, {'client': 'metadata'}) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_delete_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 204 mock_requests.delete.return_value = mock_response retval = self.r.delete('test_client_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_delete_fail(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 500 mock_requests.delete.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.r.delete, 'test_client_id') - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_get_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 200 mock_response.json.return_value = {'client_id': 'qwerqwer'} mock_requests.get.return_value = mock_response retval = self.r.get('test_client_id') self.assertEqual({'client_id': 'qwerqwer'}, retval) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_get_none(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 404 mock_requests.get.return_value = mock_response retval = self.r.get('test_client_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_get_raises_ApiClientException_on_error_not_404(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 500 mock_requests.get.return_value = mock_response self.assertRaises(exceptions.ApiClientException, self.r.get, 'test_client_id') - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_list_ok(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 200 client_list = [{'client_id_0': 'qwerqwer'}, {'client_id_1': 'asdfasdf'}] mock_response.json.return_value = {'clients': client_list} @@ -101,9 +100,9 @@ class TestClientManager(unittest.TestCase): retval = self.r.list() self.assertEqual(client_list, retval) - @patch('freezerclient.v1.managers.clients.requests') + @mock.patch('freezerclient.v1.managers.clients.requests') def test_list_error(self, mock_requests): - mock_response = Mock() + mock_response = mock.Mock() mock_response.status_code = 404 client_list = [{'client_id_0': 'qwerqwer'}, {'client_id_1': 'asdfasdf'}] mock_response.json.return_value = {'clients': client_list} diff --git a/freezerclient/tests/unit/v1/test_client_jobs.py b/freezerclient/tests/unit/v1/test_client_jobs.py index 519d0b5..a19c6d7 100644 --- a/freezerclient/tests/unit/v1/test_client_jobs.py +++ b/freezerclient/tests/unit/v1/test_client_jobs.py @@ -13,19 +13,18 @@ # limitations under the License. import json +import mock import unittest from freezerclient import exceptions from freezerclient.v1.client import jobs -from mock import Mock, patch - class TestJobManager(unittest.TestCase): def setUp(self): - self.mock_client = Mock() - self.mock_response = Mock() + self.mock_client = mock.Mock() + self.mock_response = mock.Mock() self.mock_client.endpoint = 'http://testendpoint:9999' self.mock_client.auth_token = 'testtoken' self.mock_client.client_id = 'test_client_id_78900987' @@ -36,7 +35,7 @@ class TestJobManager(unittest.TestCase): 'Accept': 'application/json' } - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_create(self, mock_requests): self.assertEqual('http://testendpoint:9999/v1/jobs/', self.job_manager.endpoint) self.assertEqual({'X-Auth-Token': 'testtoken', @@ -44,7 +43,7 @@ class TestJobManager(unittest.TestCase): 'Accept': 'application/json'}, self.job_manager.headers) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_create_ok(self, mock_requests): self.mock_response.status_code = 201 self.mock_response.json.return_value = {'job_id': 'qwerqwer'} @@ -52,8 +51,8 @@ class TestJobManager(unittest.TestCase): retval = self.job_manager.create({'job': 'metadata'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.jobs.json') - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.json') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_create_adds_client_id_if_not_provided(self, mock_requests, mock_json): self.mock_response.status_code = 201 self.mock_response.json.return_value = {'job_id': 'qwerqwer'} @@ -66,8 +65,8 @@ class TestJobManager(unittest.TestCase): 'client_id': 'test_client_id_78900987'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.jobs.json') - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.json') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_create_leaves_provided_client_id(self, mock_requests, mock_json): self.mock_response.status_code = 201 self.mock_response.json.return_value = {'job_id': 'qwerqwer'} @@ -80,26 +79,26 @@ class TestJobManager(unittest.TestCase): 'client_id': 'parmenide'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_create_fail_when_api_return_error_code(self, mock_requests): self.mock_response.status_code = 500 mock_requests.post.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.create, {'job': 'metadata'}) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_delete_ok(self, mock_requests): self.mock_response.status_code = 204 mock_requests.delete.return_value = self.mock_response retval = self.job_manager.delete('test_job_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_delete_fail(self, mock_requests): self.mock_response.status_code = 500 mock_requests.delete.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.delete, 'test_job_id') - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_get_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = {'job_id': 'qwerqwer'} @@ -107,20 +106,20 @@ class TestJobManager(unittest.TestCase): retval = self.job_manager.get('test_job_id') self.assertEqual({'job_id': 'qwerqwer'}, retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_get_fails_on_error_different_from_404(self, mock_requests): self.mock_response.status_code = 500 mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.get, 'test_job_id') - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_get_none(self, mock_requests): self.mock_response.status_code = 404 mock_requests.get.return_value = self.mock_response retval = self.job_manager.get('test_job_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_list_ok(self, mock_requests): self.mock_response.status_code = 200 job_list = [{'job_id_0': 'bomboloid'}, {'job_id_1': 'asdfasdf'}] @@ -129,7 +128,7 @@ class TestJobManager(unittest.TestCase): retval = self.job_manager.list() self.assertEqual(job_list, retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_list_error(self, mock_requests): self.mock_response.status_code = 404 job_list = [{'job_id_0': 'bomboloid'}, {'job_id_1': 'asdfasdf'}] @@ -137,7 +136,7 @@ class TestJobManager(unittest.TestCase): mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.list) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_update_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = { @@ -149,7 +148,7 @@ class TestJobManager(unittest.TestCase): retval = self.job_manager.update('d454beec-1f3c-4d11-aa1a-404116a40502', {'status': 'bamboozled'}) self.assertEqual(12, retval) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_update_raise_MetadataUpdateFailure_when_api_return_error_code(self, mock_requests): self.mock_response.json.return_value = { "patch": {"status": "bamboozled"}, @@ -163,7 +162,7 @@ class TestJobManager(unittest.TestCase): 'd454beec-1f3c-4d11-aa1a-404116a40502', {'status': 'bamboozled'}) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_start_job_posts_proper_data(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 202 @@ -182,7 +181,7 @@ class TestJobManager(unittest.TestCase): self.assertEqual(data, json.loads(kwargs['data'])) self.assertEqual(self.headers, kwargs['headers']) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_start_job_raise_ApiClientException_when_api_return_error_code(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 500 @@ -190,7 +189,7 @@ class TestJobManager(unittest.TestCase): mock_requests.post.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.start_job, job_id) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_stop_job_posts_proper_data(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 202 @@ -209,7 +208,7 @@ class TestJobManager(unittest.TestCase): self.assertEqual(data, json.loads(kwargs['data'])) self.assertEqual(self.headers, kwargs['headers']) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_stop_job_raise_ApiClientException_when_api_return_error_code(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 500 @@ -217,7 +216,7 @@ class TestJobManager(unittest.TestCase): mock_requests.post.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.job_manager.start_job, job_id) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_abort_job_posts_proper_data(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 202 @@ -236,7 +235,7 @@ class TestJobManager(unittest.TestCase): self.assertEqual(data, json.loads(kwargs['data'])) self.assertEqual(self.headers, kwargs['headers']) - @patch('freezerclient.v1.managers.jobs.requests') + @mock.patch('freezerclient.v1.managers.jobs.requests') def test_abort_job_raise_ApiClientException_when_api_return_error_code(self, mock_requests): job_id = 'jobdfsfnqwerty1234' self.mock_response.status_code = 500 diff --git a/freezerclient/tests/unit/v1/test_client_sessions.py b/freezerclient/tests/unit/v1/test_client_sessions.py index 977da91..9f69a37 100644 --- a/freezerclient/tests/unit/v1/test_client_sessions.py +++ b/freezerclient/tests/unit/v1/test_client_sessions.py @@ -13,19 +13,18 @@ # limitations under the License. import json +import mock import unittest from freezerclient import exceptions from freezerclient.v1.client import sessions -from mock import Mock, patch - class TestSessionManager(unittest.TestCase): def setUp(self): - self.mock_client = Mock() - self.mock_response = Mock() + self.mock_client = mock.Mock() + self.mock_response = mock.Mock() self.mock_client.endpoint = 'http://testendpoint:9999' self.mock_client.auth_token = 'testtoken' self.mock_client.client_id = 'test_client_id_78900987' @@ -37,12 +36,12 @@ class TestSessionManager(unittest.TestCase): 'Accept': 'application/json' } - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_create(self, mock_requests): self.assertEqual(self.endpoint, self.session_manager.endpoint) self.assertEqual(self.headers, self.session_manager.headers) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_create_ok(self, mock_requests): self.mock_response.status_code = 201 self.mock_response.json.return_value = {'session_id': 'qwerqwer'} @@ -50,26 +49,26 @@ class TestSessionManager(unittest.TestCase): retval = self.session_manager.create({'session': 'metadata'}) self.assertEqual('qwerqwer', retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_create_raise_ApiClientException_when_api_return_error_code(self, mock_requests): self.mock_response.status_code = 500 mock_requests.post.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.create, {'session': 'metadata'}) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_delete_ok(self, mock_requests): self.mock_response.status_code = 204 mock_requests.delete.return_value = self.mock_response retval = self.session_manager.delete('test_session_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_delete_raise_ApiClientException_when_api_return_error_code(self, mock_requests): self.mock_response.status_code = 500 mock_requests.delete.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.delete, 'test_session_id') - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_get_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = {'session_id': 'qwerqwer'} @@ -77,20 +76,20 @@ class TestSessionManager(unittest.TestCase): retval = self.session_manager.get('test_session_id') self.assertEqual({'session_id': 'qwerqwer'}, retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_get_raise_ApiClientException_when_api_return_error_different_from_404(self, mock_requests): self.mock_response.status_code = 500 mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.get, 'test_session_id') - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_get_none(self, mock_requests): self.mock_response.status_code = 404 mock_requests.get.return_value = self.mock_response retval = self.session_manager.get('test_session_id') self.assertIsNone(retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_list_ok(self, mock_requests): self.mock_response.status_code = 200 session_list = [{'session_id_0': 'bomboloid'}, {'session_id_1': 'asdfasdf'}] @@ -99,7 +98,7 @@ class TestSessionManager(unittest.TestCase): retval = self.session_manager.list() self.assertEqual(session_list, retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_list_raise_ApiClientException_when_api_return_error_code(self, mock_requests): self.mock_response.status_code = 404 session_list = [{'session_id_0': 'bomboloid'}, {'session_id_1': 'asdfasdf'}] @@ -107,7 +106,7 @@ class TestSessionManager(unittest.TestCase): mock_requests.get.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.list) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_update_ok(self, mock_requests): self.mock_response.status_code = 200 self.mock_response.json.return_value = { @@ -119,7 +118,7 @@ class TestSessionManager(unittest.TestCase): retval = self.session_manager.update('d454beec-1f3c-4d11-aa1a-404116a40502', {'status': 'bamboozled'}) self.assertEqual(12, retval) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_update_raise_ApiClientException_when_api_return_error_code(self, mock_requests): self.mock_response.json.return_value = { "patch": {"status": "bamboozled"}, @@ -132,7 +131,7 @@ class TestSessionManager(unittest.TestCase): self.assertRaises(exceptions.ApiClientException, self.session_manager.update, 'd454beec-1f3c-4d11-aa1a-404116a40502', {'status': 'bamboozled'}) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_add_job_uses_proper_endpoint(self, mock_requests): session_id, job_id = 'sessionqwerty1234', 'jobqwerty1234' self.mock_response.status_code = 204 @@ -144,14 +143,14 @@ class TestSessionManager(unittest.TestCase): self.assertIsNone(retval) mock_requests.put.assert_called_with(endpoint, headers=self.headers, verify=True) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_add_job_raise_ApiClientException_when_api_return_error_code(self, mock_requests): session_id, job_id = 'sessionqwerty1234', 'jobqwerty1234' self.mock_response.status_code = 500 mock_requests.put.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.add_job, session_id, job_id) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_remove_job_uses_proper_endpoint(self, mock_requests): session_id, job_id = 'sessionqwerty1234', 'jobqwerty1234' self.mock_response.status_code = 204 @@ -163,14 +162,14 @@ class TestSessionManager(unittest.TestCase): self.assertIsNone(retval) mock_requests.delete.assert_called_with(endpoint, headers=self.headers, verify=True) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_remove_job_raise_ApiClientException_when_api_return_error_code(self, mock_requests): session_id, job_id = 'sessionqwerty1234', 'jobqwerty1234' self.mock_response.status_code = 500 mock_requests.delete.return_value = self.mock_response self.assertRaises(exceptions.ApiClientException, self.session_manager.remove_job, session_id, job_id) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_start_session_posts_proper_data(self, mock_requests): session_id, job_id, tag = 'sessionqwerty1234', 'jobqwerty1234', 23 self.mock_response.status_code = 202 @@ -188,7 +187,7 @@ class TestSessionManager(unittest.TestCase): self.assertEqual(data, json.loads(kwargs['data'])) self.assertEqual(self.headers, kwargs['headers']) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_start_session_raise_ApiClientException_when_api_return_error_code(self, mock_requests): session_id, job_id, tag = 'sessionqwerty1234', 'jobqwerty1234', 23 self.mock_response.status_code = 500 @@ -197,7 +196,7 @@ class TestSessionManager(unittest.TestCase): self.assertRaises(exceptions.ApiClientException, self.session_manager.start_session, session_id, job_id, tag) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_end_session_posts_proper_data(self, mock_requests): session_id, job_id, tag = 'sessionqwerty1234', 'jobqwerty1234', 23 self.mock_response.status_code = 202 @@ -215,7 +214,7 @@ class TestSessionManager(unittest.TestCase): self.assertEqual(data, json.loads(kwargs['data'])) self.assertEqual(self.headers, kwargs['headers']) - @patch('freezerclient.v1.managers.sessions.requests') + @mock.patch('freezerclient.v1.managers.sessions.requests') def test_end_session_raise_ApiClientException_when_api_return_error_code(self, mock_requests): session_id, job_id, tag = 'sessionqwerty1234', 'jobqwerty1234', 23 self.mock_response.status_code = 500 diff --git a/freezerclient/v1/actions.py b/freezerclient/v1/actions.py index 60f30f1..3573d16 100644 --- a/freezerclient/v1/actions.py +++ b/freezerclient/v1/actions.py @@ -14,19 +14,18 @@ import logging -from cliff.command import Command -from cliff.lister import Lister -from cliff.show import ShowOne +from cliff import command +from cliff import lister +from cliff import show from freezerclient import exceptions -from freezerclient.utils import doc_from_json_file -from freezerclient.utils import prepare_search +from freezerclient import utils logging = logging.getLogger(__name__) -class ActionShow(ShowOne): +class ActionShow(show.ShowOne): """Show a single action """ def get_parser(self, prog_name): parser = super(ActionShow, self).get_parser(prog_name) @@ -63,7 +62,7 @@ class ActionShow(ShowOne): return column, data -class ActionList(Lister): +class ActionList(lister.Lister): """List all actions for your user""" def get_parser(self, prog_name): parser = super(ActionList, self).get_parser(prog_name) @@ -91,7 +90,7 @@ class ActionList(Lister): return parser def take_action(self, parsed_args): - search = prepare_search(parsed_args.search) + search = utils.prepare_search(parsed_args.search) actions = self.app.client.actions.list( limit=parsed_args.limit, @@ -111,7 +110,7 @@ class ActionList(Lister): ) for action in actions)) -class ActionDelete(Command): +class ActionDelete(command.Command): """Delete an action from the api""" def get_parser(self, prog_name): parser = super(ActionDelete, self).get_parser(prog_name) @@ -124,7 +123,7 @@ class ActionDelete(Command): logging.info('Action {0} deleted'.format(parsed_args.action_id)) -class ActionCreate(Command): +class ActionCreate(command.Command): """Create an action from a file""" def get_parser(self, prog_name): parser = super(ActionCreate, self).get_parser(prog_name) @@ -134,12 +133,12 @@ class ActionCreate(Command): return parser def take_action(self, parsed_args): - action = doc_from_json_file(parsed_args.file) + action = utils.doc_from_json_file(parsed_args.file) action_id = self.app.client.actions.create(action) logging.info('Action {0} created'.format(action_id)) -class ActionUpdate(Command): +class ActionUpdate(command.Command): """Update an action from a file""" def get_parser(self, prog_name): parser = super(ActionUpdate, self).get_parser(prog_name) @@ -151,6 +150,6 @@ class ActionUpdate(Command): return parser def take_action(self, parsed_args): - action = doc_from_json_file(parsed_args.file) + action = utils.doc_from_json_file(parsed_args.file) self.app.client.actions.update(parsed_args.action_id, action) logging.info('Action {0} updated'.format(parsed_args.action_id)) diff --git a/freezerclient/v1/backups.py b/freezerclient/v1/backups.py index 73b3623..7109780 100644 --- a/freezerclient/v1/backups.py +++ b/freezerclient/v1/backups.py @@ -14,20 +14,19 @@ import datetime import logging +import pprint -from pprint import pformat - -from cliff.lister import Lister -from cliff.show import ShowOne +from cliff import lister +from cliff import show from freezerclient import exceptions -from freezerclient.utils import prepare_search +from freezerclient import utils logging = logging.getLogger(__name__) -class BackupShow(ShowOne): +class BackupShow(show.ShowOne): """Show the metadata of a single backup""" def get_parser(self, prog_name): parser = super(BackupShow, self).get_parser(prog_name) @@ -58,12 +57,12 @@ class BackupShow(ShowOne): data = ( backup.get('backup_id'), backup.get('backup_uuid'), - pformat(backup.get('backup_metadata')) + pprint.pformat(backup.get('backup_metadata')) ) return column, data -class BackupList(Lister): +class BackupList(lister.Lister): """List all backups for your user""" def get_parser(self, prog_name): parser = super(BackupList, self).get_parser(prog_name) @@ -91,7 +90,7 @@ class BackupList(Lister): return parser def take_action(self, parsed_args): - search = prepare_search(parsed_args.search) + search = utils.prepare_search(parsed_args.search) backups = self.app.client.backups.list(limit=parsed_args.limit, offset=parsed_args.offset, diff --git a/freezerclient/v1/jobs.py b/freezerclient/v1/jobs.py index 545f21c..4547ac5 100644 --- a/freezerclient/v1/jobs.py +++ b/freezerclient/v1/jobs.py @@ -13,23 +13,20 @@ # limitations under the License. import logging +import pprint -from pprint import pformat -from pprint import pprint - -from cliff.command import Command -from cliff.lister import Lister -from cliff.show import ShowOne +from cliff import command +from cliff import lister +from cliff import show from freezerclient import exceptions -from freezerclient.utils import doc_from_json_file -from freezerclient.utils import prepare_search +from freezerclient import utils logging = logging.getLogger(__name__) -class JobShow(ShowOne): +class JobShow(show.ShowOne): """Show a single job""" def get_parser(self, prog_name): parser = super(JobShow, self).get_parser(prog_name) @@ -60,7 +57,7 @@ class JobShow(ShowOne): job.get('user_id'), job.get('session_id', ''), job.get('description'), - pformat(job.get('job_actions')), + pprint.pformat(job.get('job_actions')), job.get('job_schedule', {}).get('schedule_start_date', ''), job.get('job_schedule', {}).get('schedule_interval', ''), job.get('job_schedule', {}).get('schedule_end_date', ''), @@ -68,7 +65,7 @@ class JobShow(ShowOne): return column, data -class JobList(Lister): +class JobList(lister.Lister): """List all the jobs for your user""" def get_parser(self, prog_name): parser = super(JobList, self).get_parser(prog_name) @@ -104,7 +101,7 @@ class JobList(Lister): def take_action(self, parsed_args): - search = prepare_search(parsed_args.search) + search = utils.prepare_search(parsed_args.search) if parsed_args.client_id: jobs = self.app.client.jobs.list( @@ -134,7 +131,7 @@ class JobList(Lister): ) for job in jobs)) -class JobGet(Command): +class JobGet(command.Command): """Download a job as a json file""" def get_parser(self, prog_name): parser = super(JobGet, self).get_parser(prog_name) @@ -157,10 +154,10 @@ class JobGet(Command): if parsed_args.no_format: print(job) else: - pprint(job) + pprint.pprint(job) -class JobDelete(Command): +class JobDelete(command.Command): """Delete a job from the api""" def get_parser(self, prog_name): parser = super(JobDelete, self).get_parser(prog_name) @@ -173,7 +170,7 @@ class JobDelete(Command): logging.info('Job {0} deleted'.format(parsed_args.job_id)) -class JobCreate(Command): +class JobCreate(command.Command): """Create a new job from a file""" def get_parser(self, prog_name): parser = super(JobCreate, self).get_parser(prog_name) @@ -183,12 +180,12 @@ class JobCreate(Command): return parser def take_action(self, parsed_args): - job = doc_from_json_file(parsed_args.file) + job = utils.doc_from_json_file(parsed_args.file) job_id = self.app.client.jobs.create(job) logging.info('Job {0} created'.format(job_id)) -class JobStart(Command): +class JobStart(command.Command): """Send a start signal for a job""" def get_parser(self, prog_name): parser = super(JobStart, self).get_parser(prog_name) @@ -201,7 +198,7 @@ class JobStart(Command): logging.info('Job {0} has started'.format(parsed_args.job_id)) -class JobStop(Command): +class JobStop(command.Command): """Send a stop signal for a job""" def get_parser(self, prog_name): parser = super(JobStop, self).get_parser(prog_name) @@ -214,7 +211,7 @@ class JobStop(Command): logging.info('Job {0} has stopped'.format(parsed_args.job_id)) -class JobAbort(Command): +class JobAbort(command.Command): """Abort a running job""" def get_parser(self, prog_name): parser = super(JobAbort, self).get_parser(prog_name) @@ -227,7 +224,7 @@ class JobAbort(Command): logging.info('Job {0} has been aborted'.format(parsed_args.job_id)) -class JobUpdate(Command): +class JobUpdate(command.Command): """Update a job from a file""" def get_parser(self, prog_name): parser = super(JobUpdate, self).get_parser(prog_name) @@ -239,6 +236,6 @@ class JobUpdate(Command): return parser def take_action(self, parsed_args): - job = doc_from_json_file(parsed_args.file) + job = utils.doc_from_json_file(parsed_args.file) self.app.client.jobs.update(parsed_args.job_id, job) logging.info('Job {0} updated'.format(parsed_args.job_id)) diff --git a/freezerclient/v1/managers/actions.py b/freezerclient/v1/managers/actions.py index 6cc9fbb..a73b5ba 100644 --- a/freezerclient/v1/managers/actions.py +++ b/freezerclient/v1/managers/actions.py @@ -16,7 +16,7 @@ import json import requests from freezerclient import exceptions -from freezerclient.utils import create_headers_for_request +from freezerclient import utils class ActionManager(object): @@ -28,7 +28,7 @@ class ActionManager(object): @property def headers(self): - return create_headers_for_request(self.client.auth_token) + return utils.create_headers_for_request(self.client.auth_token) def create(self, doc, action_id=''): action_id = action_id or doc.get('action_id', '') diff --git a/freezerclient/v1/managers/backups.py b/freezerclient/v1/managers/backups.py index b880fbf..f41a10c 100644 --- a/freezerclient/v1/managers/backups.py +++ b/freezerclient/v1/managers/backups.py @@ -16,7 +16,7 @@ import json import requests from freezerclient import exceptions -from freezerclient.utils import create_headers_for_request +from freezerclient import utils class BackupsManager(object): @@ -28,7 +28,7 @@ class BackupsManager(object): @property def headers(self): - return create_headers_for_request(self.client.auth_token) + return utils.create_headers_for_request(self.client.auth_token) def create(self, backup_metadata): r = requests.post(self.endpoint, diff --git a/freezerclient/v1/managers/clients.py b/freezerclient/v1/managers/clients.py index 5431dd3..7a555c1 100644 --- a/freezerclient/v1/managers/clients.py +++ b/freezerclient/v1/managers/clients.py @@ -16,7 +16,7 @@ import json import requests from freezerclient import exceptions -from freezerclient.utils import create_headers_for_request +from freezerclient import utils class ClientManager(object): @@ -28,7 +28,7 @@ class ClientManager(object): @property def headers(self): - return create_headers_for_request(self.client.auth_token) + return utils.create_headers_for_request(self.client.auth_token) def create(self, client_info): r = requests.post(self.endpoint, diff --git a/freezerclient/v1/managers/jobs.py b/freezerclient/v1/managers/jobs.py index bd05a49..483d712 100644 --- a/freezerclient/v1/managers/jobs.py +++ b/freezerclient/v1/managers/jobs.py @@ -16,7 +16,7 @@ import json import requests from freezerclient import exceptions -from freezerclient.utils import create_headers_for_request +from freezerclient import utils class JobManager(object): @@ -28,7 +28,7 @@ class JobManager(object): @property def headers(self): - return create_headers_for_request(self.client.auth_token) + return utils.create_headers_for_request(self.client.auth_token) def create(self, doc, job_id=''): job_id = job_id or doc.get('job_id', '') diff --git a/freezerclient/v1/managers/sessions.py b/freezerclient/v1/managers/sessions.py index 20de76b..c86881d 100644 --- a/freezerclient/v1/managers/sessions.py +++ b/freezerclient/v1/managers/sessions.py @@ -16,7 +16,7 @@ import json import requests from freezerclient import exceptions -from freezerclient.utils import create_headers_for_request +from freezerclient import utils class SessionManager(object): @@ -28,7 +28,7 @@ class SessionManager(object): @property def headers(self): - return create_headers_for_request(self.client.auth_token) + return utils.create_headers_for_request(self.client.auth_token) def create(self, doc, session_id=''): session_id = session_id or doc.get('session_id', '') diff --git a/freezerclient/v1/sessions.py b/freezerclient/v1/sessions.py index d83494f..0ab6efe 100644 --- a/freezerclient/v1/sessions.py +++ b/freezerclient/v1/sessions.py @@ -13,21 +13,20 @@ # limitations under the License. import logging +import pprint -from pprint import pformat - -from cliff.command import Command -from cliff.lister import Lister -from cliff.show import ShowOne +from cliff import command +from cliff import lister +from cliff import show from freezerclient import exceptions -from freezerclient.utils import doc_from_json_file +from freezerclient import utils logging = logging.getLogger(__name__) -class SessionShow(ShowOne): +class SessionShow(show.ShowOne): """Show a single session""" def get_parser(self, prog_name): parser = super(SessionShow, self).get_parser(prog_name) @@ -52,12 +51,12 @@ class SessionShow(ShowOne): session.get('session_id'), session.get('description'), session.get('status'), - pformat(session.get('jobs')) + pprint.pformat(session.get('jobs')) ) return column, data -class SessionList(Lister): +class SessionList(lister.Lister): """List all the sessions for your user""" def get_parser(self, prog_name): parser = super(SessionList, self).get_parser(prog_name) @@ -99,7 +98,7 @@ class SessionList(Lister): ) for session in sessions)) -class SessionCreate(Command): +class SessionCreate(command.Command): """Create a session from a file""" def get_parser(self, prog_name): parser = super(SessionCreate, self).get_parser(prog_name) @@ -109,12 +108,12 @@ class SessionCreate(Command): return parser def take_action(self, parsed_args): - session = doc_from_json_file(parsed_args.file) + session = utils.doc_from_json_file(parsed_args.file) session_id = self.app.client.sessions.create(session) logging.info('Session {0} created'.format(session_id)) -class SessionAddJob(Command): +class SessionAddJob(command.Command): """Add a job to a session""" def get_parser(self, prog_name): parser = super(SessionAddJob, self).get_parser(prog_name) @@ -133,7 +132,7 @@ class SessionAddJob(Command): parsed_args.job_id, parsed_args.session_id)) -class SessionRemoveJob(Command): +class SessionRemoveJob(command.Command): """Remove a job from a session""" def get_parser(self, prog_name): parser = super(SessionRemoveJob, self).get_parser(prog_name) @@ -163,7 +162,7 @@ class SessionRemoveJob(Command): parsed_args.job_id, parsed_args.session_id)) -class SessionStart(Command): +class SessionStart(command.Command): """Start a session""" def get_parser(self, prog_name): pass @@ -172,7 +171,7 @@ class SessionStart(Command): pass -class SessionEnd(Command): +class SessionEnd(command.Command): """Stop a session""" def get_parser(self, prog_name): pass @@ -181,7 +180,7 @@ class SessionEnd(Command): pass -class SessionUpdate(Command): +class SessionUpdate(command.Command): """Update a session from a file""" def get_parser(self, prog_name): parser = super(SessionUpdate, self).get_parser(prog_name) @@ -193,6 +192,6 @@ class SessionUpdate(Command): return parser def take_action(self, parsed_args): - session = doc_from_json_file(parsed_args.file) + session = utils.doc_from_json_file(parsed_args.file) self.app.client.sessions.update(parsed_args.session_id, session) logging.info('Session {0} updated'.format(parsed_args.session_id))