Example #1
0
 def test_get_servers_from_clc_api(self, mock_clc_sdk):
     mock_clc_sdk.v2.Servers.side_effect = CLCException("Server Not Found")
     under_test = ClcBlueprintPackage(self.module)
     under_test._get_servers_from_clc(['TESTSVR1', 'TESTSVR2'],
                                      'FAILED TO OBTAIN LIST')
     self.module.fail_json.assert_called_once_with(
         msg='FAILED TO OBTAIN LIST: Server Not Found')
 def test_set_clc_creds_w_token(self, mock_clc_sdk):
     with patch.dict('os.environ', {'CLC_V2_API_TOKEN': 'dummyToken',
                                    'CLC_ACCT_ALIAS': 'TEST'}):
         under_test = ClcBlueprintPackage(self.module)
         under_test._set_clc_credentials_from_env()
     self.assertEqual(under_test.clc._LOGIN_TOKEN_V2, 'dummyToken')
     self.assertFalse(mock_clc_sdk.v2.SetCredentials.called)
     self.assertEqual(self.module.fail_json.called, False)
Example #3
0
 def test_set_clc_credentials_w_creds(self, mock_clc_sdk):
     with patch.dict('os.environ', {
             'CLC_V2_API_USERNAME': '******',
             'CLC_V2_API_PASSWD': 'dummypwd'
     }):
         under_test = ClcBlueprintPackage(self.module)
         under_test._set_clc_credentials_from_env()
     mock_clc_sdk.v2.SetCredentials.assert_called_once_with(
         api_username='******', api_passwd='dummypwd')
 def test_clc_install_package_exception(self):
     self.module.check_mode = False
     error = CLCException()
     error.message = 'Mock failure message'
     mock_server = mock.MagicMock()
     mock_server.id = 'server1'
     mock_server.ExecutePackage.side_effect = error
     under_test = ClcBlueprintPackage(self.module)
     under_test.clc_install_package(mock_server, 'package_id', {})
     self.module.fail_json.assert_called_once_with(msg='Failed to install package : package_id to server server1. Mock failure message')
    def test_wait_for_requests_w_mock_request(self):
        mock_r1 = mock.MagicMock()
        mock_r1.WaitUntilComplete.return_value = True
        mock_r2 = mock.MagicMock()
        mock_r2.WaitUntilComplete.return_value = True
        requests = [mock_r1, mock_r2]
        self.module.wait = True

        under_test = ClcBlueprintPackage(self.module)
        under_test._wait_for_requests_to_complete(requests)
        self.assertFalse(self.module.fail_json.called)
    def test_wait_for_requests_w_mock_request_fail(self):
        mock_request = mock.MagicMock()
        mock_request.WaitUntilComplete.return_value = True
        mock_response = mock.MagicMock()
        mock_response.Status.return_value = 'Failed'
        mock_request.requests = [mock_response]
        requests = [mock_request]
        self.module.wait = True

        under_test = ClcBlueprintPackage(self.module)
        under_test._wait_for_requests_to_complete(requests)
        self.assertTrue(self.module.fail_json.called)
    def test_ensure_package_installed_no_server(self, mock_get_servers_from_clc):
        test_params = {
            'server_ids': ['TESTSVR1', 'TESTSVR2']
            , 'package_id': 'dummyId'
            , 'package_params': {}
            , 'state' : 'present'
        }
        server_ids = ['TESTSVR1', 'TESTSVR2']
        package_id = 'dummyId'
        package_params = {}
        self.module.params = test_params
        under_test = ClcBlueprintPackage(self.module)
        under_test.ensure_package_installed(server_ids, package_id, package_params)

        self.assertTrue(mock_get_servers_from_clc.called)
        self.assertFalse(self.module.fail_json.called)
    def test_process_request_w_valid_args(self, mock_get_servers, mock_set_clc_creds):
        test_params = {
            'server_ids': ['TESTSVR1', 'TESTSVR2']
            , 'package_id': 'TSTPKGID1'
            , 'package_params': {}
            , 'state' : 'present'
            , 'wait' : False
        }
        mock_get_servers.return_value = [mock.MagicMock()]
        self.module.params = test_params
        self.module.check_mode = False
        under_test = ClcBlueprintPackage(self.module)
        under_test.process_request()

        self.assertTrue(mock_set_clc_creds.called)
        self.assertFalse(self.module.fail_json.called)
        self.assertTrue(self.module.exit_json.called)
    def test_ensure_package_installed(self, mock_get_servers_from_clc):
        test_params = {
            'server_ids': ['TESTSVR1', 'TESTSVR2']
            , 'package_id': 'dummyId'
            , 'package_params': {}
            , 'state' : 'present'
        }
        server_ids = ['TESTSVR1', 'TESTSVR2']
        package_id = 'dummyId'
        package_params = {}
        self.module.params = test_params
        mock_server_list = self.build_mock_server_list()
        mock_get_servers_from_clc.return_value=mock_server_list
        under_test = ClcBlueprintPackage(self.module)
        changed, return_servers, requests = under_test.ensure_package_installed(server_ids, package_id, package_params)

        self.assertTrue(mock_get_servers_from_clc.called)
        self.assertFalse(self.module.fail_json.called)
        self.assertEqual(changed, True)
        self.assertEqual(return_servers,['TESTSVR1', 'TESTSVR2'])
 def test_clc_module_not_found(self):
     # Setup Mock Import Function
     import __builtin__ as builtins
     real_import = builtins.__import__
     def mock_import(name, *args):
         if name == 'clc': raise ImportError
         return real_import(name, *args)
     # Under Test
     with mock.patch('__builtin__.__import__', side_effect=mock_import):
         reload(clc_blueprint_package)
         ClcBlueprintPackage(self.module)
     # Assert Expected Behavior
     self.module.fail_json.assert_called_with(msg='clc-python-sdk required for this module')
     reload(clc_blueprint_package)
 def test_requests_invalid_version(self):
     # Setup Mock Import Function
     import __builtin__ as builtins
     real_import = builtins.__import__
     def mock_import(name, *args):
         if name == 'requests':
             args[0]['requests'].__version__ = '2.4.0'
         return real_import(name, *args)
     # Under Test
     with mock.patch('__builtin__.__import__', side_effect=mock_import):
         reload(clc_blueprint_package)
         ClcBlueprintPackage(self.module)
     # Assert Expected Behavior
     self.module.fail_json.assert_called_with(msg='requests library  version should be >= 2.5.0')
     reload(clc_blueprint_package)
Example #12
0
    def test_requests_module_not_found(self):
        # Setup Mock Import Function
        real_import = __import__

        def mock_import(name, *args):
            if name == 'requests':
                args[0]['requests'].__version__ = '2.7.0'
                raise ImportError
            return real_import(name, *args)

        # Under Test
        with mock.patch('__builtin__.__import__', side_effect=mock_import):
            reload(clc_blueprint_package)
            ClcBlueprintPackage(self.module)
        # Assert Expected Behavior
        self.module.fail_json.assert_called_with(
            msg='requests library is required for this module')
        reload(clc_blueprint_package)
 def test_set_clc_credentials_w_no_creds(self):
     with patch.dict('os.environ', {}, clear=True):
         under_test = ClcBlueprintPackage(self.module)
         under_test._set_clc_credentials_from_env()
     self.assertEqual(self.module.fail_json.called, True)
 def test_set_clc_credentials_w_creds(self, mock_clc_sdk):
     with patch.dict('os.environ', {'CLC_V2_API_USERNAME': '******', 'CLC_V2_API_PASSWD': 'dummypwd'}):
         under_test = ClcBlueprintPackage(self.module)
         under_test._set_clc_credentials_from_env()
     mock_clc_sdk.v2.SetCredentials.assert_called_once_with(api_username='******', api_passwd='dummypwd')
 def test_set_clc_credentials_w_api_url(self, mock_clc_sdk):
     with patch.dict('os.environ', {'CLC_V2_API_URL': 'dummyapiurl'}):
         under_test = ClcBlueprintPackage(self.module)
         under_test._set_clc_credentials_from_env()
         self.assertEqual(under_test.clc.defaults.ENDPOINT_URL_V2, 'dummyapiurl')
    def test_set_user_agent(self, mock_clc_sdk):
        clc_blueprint_package.__version__ = "1"
        ClcBlueprintPackage._set_user_agent(mock_clc_sdk)

        self.assertTrue(mock_clc_sdk.SetRequestsSession.called)
 def test_define_argument_spec(self):
     result = ClcBlueprintPackage.define_argument_spec()
     self.assertIsInstance(result, dict)
 def test_get_servers_from_clc_api(self, mock_clc_sdk):
     mock_clc_sdk.v2.Servers.side_effect = CLCException("Server Not Found")
     under_test = ClcBlueprintPackage(self.module)
     under_test._get_servers_from_clc(['TESTSVR1', 'TESTSVR2'], 'FAILED TO OBTAIN LIST')
     self.module.fail_json.assert_called_once_with(msg='FAILED TO OBTAIN LIST: Server Not Found')