X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Ftests%2Funit%2Fcore%2Ftest_common_db_client.py;h=71022267476ff0a9a24fffb710daf2c5da51277e;hb=1b7145f6d0d3c0090b7a33b4972861ad9ed48631;hp=81159eed3817f098beb533fac094ad56b676c27c;hpb=a97bdb3eafa4f3d07d61d32635f7f36f5cc36c58;p=osm%2FMON.git diff --git a/osm_mon/tests/unit/core/test_common_db_client.py b/osm_mon/tests/unit/core/test_common_db_client.py index 81159ee..7102226 100644 --- a/osm_mon/tests/unit/core/test_common_db_client.py +++ b/osm_mon/tests/unit/core/test_common_db_client.py @@ -27,6 +27,7 @@ from osm_common import dbmongo from osm_mon.core.common_db import CommonDbClient from osm_mon.core.config import Config +from osm_mon.core.models import Alarm class CommonDbClientTest(unittest.TestCase): @@ -97,3 +98,86 @@ class CommonDbClientTest(unittest.TestCase): } self.assertDictEqual(vdur, expected_vdur) + + @mock.patch.object(dbmongo.DbMongo, "db_connect", mock.Mock()) + @mock.patch.object(dbmongo.DbMongo, "get_one") + @mock.patch.object(CommonDbClient, "decrypt_vim_password") + def test_get_vim_account_default_schema(self, decrypt_vim_password, get_one): + schema_version = '10.0' + vim_id = '1' + get_one.return_value = { + '_id': vim_id, + 'vim_password': 'vim_password', + 'schema_version': schema_version, + 'config': { + 'admin_password': 'admin_password', + 'vrops_password': 'vrops_password', + 'nsx_password': 'nsx_password', + 'vcenter_password': 'vcenter_password' + } + } + + common_db_client = CommonDbClient(self.config) + common_db_client.get_vim_account('1') + + decrypt_vim_password.assert_any_call('vim_password', schema_version, vim_id) + decrypt_vim_password.assert_any_call('vrops_password', schema_version, vim_id) + decrypt_vim_password.assert_any_call('admin_password', schema_version, vim_id) + decrypt_vim_password.assert_any_call('nsx_password', schema_version, vim_id) + decrypt_vim_password.assert_any_call('vcenter_password', schema_version, vim_id) + + @mock.patch.object(dbmongo.DbMongo, "db_connect", mock.Mock()) + @mock.patch.object(dbmongo.DbMongo, "get_one") + @mock.patch.object(CommonDbClient, "decrypt_vim_password") + def test_get_vim_account_1_1_schema(self, decrypt_vim_password, get_one): + schema_version = '1.1' + vim_id = '1' + get_one.return_value = { + '_id': vim_id, + 'vim_password': 'vim_password', + 'schema_version': schema_version, + 'config': { + 'vrops_password': 'vrops_password' + } + } + + common_db_client = CommonDbClient(self.config) + common_db_client.get_vim_account('1') + + decrypt_vim_password.assert_any_call('vim_password', schema_version, vim_id) + self.assertRaises(AssertionError, decrypt_vim_password.assert_any_call, 'vrops_password', schema_version, + vim_id) + + @mock.patch.object(dbmongo.DbMongo, "db_connect", mock.Mock()) + @mock.patch.object(dbmongo.DbMongo, "get_list") + def test_get_alarms(self, get_list): + get_list.return_value = [{ + 'uuid': '1', + 'name': 'name', + 'severity': 'severity', + 'threshold': 50, + 'operation': 'operation', + 'statistic': 'statistic', + 'tags': {}, + }] + + common_db_client = CommonDbClient(self.config) + alarms = common_db_client.get_alarms() + self.assertEqual('1', alarms[0].uuid) + + @mock.patch.object(dbmongo.DbMongo, "db_connect", mock.Mock()) + @mock.patch.object(dbmongo.DbMongo, "create") + def test_create_alarm(self, create): + alarm = Alarm('name', 'severity', 50.0, 'operation', 'statistic', 'metric', {}) + alarm.uuid = '1' + common_db_client = CommonDbClient(self.config) + common_db_client.create_alarm(alarm) + create.assert_called_with('alarms', {'tags': {}, 'threshold': 50.0, 'metric': 'metric', 'severity': 'severity', + 'statistic': 'statistic', 'name': 'name', 'uuid': '1'}) + + @mock.patch.object(dbmongo.DbMongo, "db_connect", mock.Mock()) + @mock.patch.object(dbmongo.DbMongo, "del_one") + def test_delete_alarm(self, delete): + common_db_client = CommonDbClient(self.config) + common_db_client.delete_alarm('1') + delete.assert_called_with('alarms', {'uuid': '1'})