- @mock.patch.object(CommonDbClient, "decrypt_vim_password")
- @mock.patch.object(VimCredentialsRepository, "upsert")
- @mock.patch('osm_mon.core.database.db')
- def test_upsert_vim_account(self, db, upsert_credentials, decrypt_vim_password):
- def _mock_decrypt_vim_password(password: str, schema_version: str, vim_uuid: str):
- return password.replace('encrypted', 'decrypted')
-
- decrypt_vim_password.side_effect = _mock_decrypt_vim_password
-
- mock_config = {
- 'admin_password': 'encrypted_admin_password',
- 'nsx_password': 'encrypted_nsx_password',
- 'vcenter_password': 'encrypted_vcenter_password'
- }
-
- mock_expected_config = {
- 'admin_password': 'decrypted_admin_password',
- 'nsx_password': 'decrypted_nsx_password',
- 'vcenter_password': 'decrypted_vcenter_password'
- }
-
- service = ServerService(self.config)
- service.upsert_vim_account('test_uuid', 'test_name', 'test_type', 'test_url', 'test_user', 'encrypted_password',
- 'test_tenant_name', '1.1', mock_config)
-
- upsert_credentials.assert_called_with(
- uuid=mock.ANY,
- name='test_name',
- type='test_type',
- url='test_url',
- user='test_user',
- password='decrypted_password',
- tenant_name='test_tenant_name',
- config=json.dumps(mock_expected_config)
- )
-
- @mock.patch.object(VimCredentialsRepository, "get")
- @mock.patch('osm_mon.core.database.db')
- def test_delete_vim_account(self, db, get_credentials):
- mock_creds = mock.Mock()
- get_credentials.return_value = mock_creds
-
- service = ServerService(self.config)
- service.delete_vim_account('test_uuid')
-
- get_credentials.assert_called_with(VimCredentials.uuid == 'test_uuid')
- mock_creds.delete_instance.assert_called_with()