X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Ftests%2Funit%2Ftest_n2vc_juju_conn.py;h=1f723fe36b3719fc768d0b7fd020cb0eab082679;hp=64b93cc7dbe8657cc303f47e30044135ff0b7496;hb=b84e4a7d4324087219ffb25887319e9ffefdb659;hpb=b816d822dcc61a709b22f475085c3f94dceca61d;ds=sidebyside diff --git a/n2vc/tests/unit/test_n2vc_juju_conn.py b/n2vc/tests/unit/test_n2vc_juju_conn.py index 64b93cc..1f723fe 100644 --- a/n2vc/tests/unit/test_n2vc_juju_conn.py +++ b/n2vc/tests/unit/test_n2vc_juju_conn.py @@ -81,6 +81,50 @@ class GetMetricssTest(N2VCJujuConnTestCase): mock_get_metrics.assert_called_once() +@asynctest.mock.patch("n2vc.libjuju.Libjuju.get_controller") +@asynctest.mock.patch("n2vc.libjuju.Libjuju.get_model") +@asynctest.mock.patch("n2vc.libjuju.Libjuju.get_executed_actions") +@asynctest.mock.patch("n2vc.libjuju.Libjuju.get_actions") +@asynctest.mock.patch("n2vc.libjuju.Libjuju.get_application_configs") +@asynctest.mock.patch("n2vc.libjuju.Libjuju._get_application") +class UpdateVcaStatusTest(N2VCJujuConnTestCase): + def setUp(self): + super(UpdateVcaStatusTest, self).setUp() + + def test_success( + self, + mock_get_application, + mock_get_application_configs, + mock_get_actions, + mock_get_executed_actions, + mock_get_model, + mock_get_controller, + ): + self.loop.run_until_complete(self.n2vc.update_vca_status( + {"model": {"applications": {"app": {"actions": {}}}}})) + mock_get_executed_actions.assert_called_once() + mock_get_actions.assert_called_once() + mock_get_application_configs.assert_called_once() + + def test_exception( + self, + mock_get_application, + mock_get_application_configs, + mock_get_actions, + mock_get_executed_actions, + mock_get_model, + mock_get_controller, + ): + mock_get_model.return_value = None + mock_get_executed_actions.side_effect = Exception() + with self.assertRaises(Exception): + self.loop.run_until_complete(self.n2vc.update_vca_status( + {"model": {"applications": {"app": {"actions": {}}}}})) + mock_get_executed_actions.assert_not_called() + mock_get_actions.assert_not_called_once() + mock_get_application_configs.assert_not_called_once() + + @asynctest.mock.patch("n2vc.libjuju.Libjuju.model_exists") @asynctest.mock.patch("osm_common.fslocal.FsLocal.file_exists") @asynctest.mock.patch(