X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Ftests%2Funit%2Ftest_k8s_juju_conn.py;h=ae262b29ce6d9120af3bb0106775c43d2f6de964;hp=388c08fed2798854f88258351c183a9df654f9f7;hb=refs%2Fchanges%2F98%2F10498%2F1;hpb=f6e9b00b6f7cd35e45ace4c84b53fe8d12b2438c;ds=sidebyside diff --git a/n2vc/tests/unit/test_k8s_juju_conn.py b/n2vc/tests/unit/test_k8s_juju_conn.py index 388c08f..ae262b2 100644 --- a/n2vc/tests/unit/test_k8s_juju_conn.py +++ b/n2vc/tests/unit/test_k8s_juju_conn.py @@ -200,6 +200,9 @@ class InitEnvTest(K8sJujuConnTestCase): self.k8s_juju_conn._create_cluster_role = Mock() self.k8s_juju_conn._create_service_account = Mock() self.k8s_juju_conn._create_cluster_role_binding = Mock() + self.k8s_juju_conn._delete_cluster_role = Mock() + self.k8s_juju_conn._delete_service_account = Mock() + self.k8s_juju_conn._delete_cluster_role_binding = Mock() self.k8s_juju_conn._get_secret_data = AsyncMock() self.k8s_juju_conn._get_secret_data.return_value = ("token", "cacert") @@ -325,105 +328,102 @@ class InstallTest(K8sJujuConnTestCase): self.http_bundle = "https://example.com/bundle.yaml" self.kdu_name = "kdu_name" self.cluster_uuid = "cluster" + self.kdu_instance = "{}-{}".format(self.kdu_name, "id") self.k8s_juju_conn.libjuju.add_model = AsyncMock() self.k8s_juju_conn.libjuju.deploy = AsyncMock() def test_success_local(self, mock_chdir): - expected_kdu_instance = "{}-{}".format(self.kdu_name, "id") - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.local_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, db_dict=self.db_dict, timeout=1800, ) ) - self.assertEqual(kdu_instance, expected_kdu_instance) self.assertEqual(mock_chdir.call_count, 2) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( "local:{}".format(self.local_bundle), - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, ) def test_success_cs(self, mock_chdir): - expected_kdu_instance = "{}-{}".format(self.kdu_name, "id") - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.cs_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, db_dict=self.db_dict, timeout=1800, ) ) - self.assertEqual(kdu_instance, expected_kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( self.cs_bundle, - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, ) def test_success_http(self, mock_chdir): - expected_kdu_instance = "{}-{}".format(self.kdu_name, "id") - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.http_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, db_dict=self.db_dict, timeout=1800, ) ) - self.assertEqual(kdu_instance, expected_kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( self.http_bundle, - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, ) def test_success_not_kdu_name(self, mock_chdir): - expected_kdu_instance = "id" - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.cs_bundle, + self.kdu_instance, atomic=True, db_dict=self.db_dict, timeout=1800, ) ) - self.assertEqual(kdu_instance, expected_kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( self.cs_bundle, - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, ) @@ -431,10 +431,11 @@ class InstallTest(K8sJujuConnTestCase): def test_missing_db_dict(self, mock_chdir): kdu_instance = None with self.assertRaises(K8sException): - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.cs_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, timeout=1800, @@ -447,71 +448,67 @@ class InstallTest(K8sJujuConnTestCase): @asynctest.mock.patch("os.getcwd") def test_getcwd_exception(self, mock_getcwd, mock_chdir): mock_getcwd.side_effect = FileNotFoundError() - expected_kdu_instance = "{}-{}".format(self.kdu_name, "id") - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.cs_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, db_dict=self.db_dict, timeout=1800, ) ) - self.assertEqual(kdu_instance, expected_kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( self.cs_bundle, - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, ) def test_missing_bundle(self, mock_chdir): - kdu_instance = None with self.assertRaises(K8sException): - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, "", + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, timeout=1800, db_dict=self.db_dict, ) ) - self.assertIsNone(kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_not_called() self.k8s_juju_conn.libjuju.deploy.assert_not_called() def test_missing_exception(self, mock_chdir): - expected_kdu_instance = "{}-{}".format(self.kdu_name, "id") - kdu_instance = None self.k8s_juju_conn.libjuju.deploy.side_effect = Exception() with self.assertRaises(Exception): - kdu_instance = self.loop.run_until_complete( + self.loop.run_until_complete( self.k8s_juju_conn.install( self.cluster_uuid, self.local_bundle, + self.kdu_instance, atomic=True, kdu_name=self.kdu_name, db_dict=self.db_dict, timeout=1800, ) ) - self.assertIsNone(kdu_instance) self.k8s_juju_conn.libjuju.add_model.assert_called_once_with( - model_name=expected_kdu_instance, + model_name=self.kdu_instance, cloud_name=self.cluster_uuid, credential_name="cred-{}".format(self.cluster_uuid), ) self.k8s_juju_conn.libjuju.deploy.assert_called_once_with( "local:{}".format(self.local_bundle), - model_name=expected_kdu_instance, + model_name=self.kdu_instance, wait=True, timeout=1800, )