X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=n2vc%2Ftests%2Funit%2Ftest_libjuju.py;h=3de4aee43e06ece9210a21e1832157670bfca29f;hb=refs%2Fchanges%2F06%2F12906%2F1;hp=e7f43ab035bd5702fcc3a19baeb5304393868d1a;hpb=553d1b7cf256eb95f8fdb9822a23ac755e1764f3;p=osm%2FN2VC.git diff --git a/n2vc/tests/unit/test_libjuju.py b/n2vc/tests/unit/test_libjuju.py index e7f43ab..3de4aee 100644 --- a/n2vc/tests/unit/test_libjuju.py +++ b/n2vc/tests/unit/test_libjuju.py @@ -778,7 +778,6 @@ class ExecuteActionTest(LibjujuTestCase): mock_get_model, mock_get_controller, ): - mock_get_model.return_value = juju.model.Model() mock__get_application.return_value = FakeApplication() output = None @@ -1007,6 +1006,38 @@ class AddRelationTest(LibjujuTestCase): mock_disconnect_controller.assert_called_once() mock_disconnect_model.assert_called_once() + @asynctest.mock.patch("logging.Logger.warning") + def test_not_found_in_error_code( + self, + mock_warning, + mock_add_relation, + mock_disconnect_controller, + mock_disconnect_model, + mock_get_model, + mock_get_controller, + ): + result = { + "error": "relation cannot be added", + "error-code": "not found", + "response": "response", + "request-id": 1, + } + + mock_get_model.return_value = juju.model.Model() + mock_add_relation.side_effect = JujuAPIError(result) + + self.loop.run_until_complete( + self.libjuju.add_relation( + "model", + "app1:relation1", + "app2:relation2", + ) + ) + + mock_warning.assert_called_with("Relation not found: relation cannot be added") + mock_disconnect_controller.assert_called_once() + mock_disconnect_model.assert_called_once() + @asynctest.mock.patch("logging.Logger.warning") def test_already_exists( self, @@ -1035,6 +1066,40 @@ class AddRelationTest(LibjujuTestCase): mock_disconnect_controller.assert_called_once() mock_disconnect_model.assert_called_once() + @asynctest.mock.patch("logging.Logger.warning") + def test_already_exists_error_code( + self, + mock_warning, + mock_add_relation, + mock_disconnect_controller, + mock_disconnect_model, + mock_get_model, + mock_get_controller, + ): + result = { + "error": "relation cannot be added", + "error-code": "already exists", + "response": "response", + "request-id": 1, + } + + mock_get_model.return_value = juju.model.Model() + mock_add_relation.side_effect = JujuAPIError(result) + + self.loop.run_until_complete( + self.libjuju.add_relation( + "model", + "app1:relation1", + "app2:relation2", + ) + ) + + mock_warning.assert_called_with( + "Relation already exists: relation cannot be added" + ) + mock_disconnect_controller.assert_called_once() + mock_disconnect_model.assert_called_once() + def test_exception( self, mock_add_relation, @@ -1229,7 +1294,6 @@ class ConfigureApplicationTest(LibjujuTestCase): mock_get_model, mock_get_controller, ): - mock_get_application.return_value = FakeApplication() self.loop.run_until_complete( @@ -1251,7 +1315,6 @@ class ConfigureApplicationTest(LibjujuTestCase): mock_get_model, mock_get_controller, ): - mock_get_application.side_effect = Exception() with self.assertRaises(Exception): @@ -1273,7 +1336,6 @@ class ConfigureApplicationTest(LibjujuTestCase): mock_get_model, mock_get_controller, ): - result = {"error": "not found", "response": "response", "request-id": 1} mock_get_controller.side_effect = JujuAPIError(result) @@ -1298,7 +1360,6 @@ class ConfigureApplicationTest(LibjujuTestCase): mock_get_model, mock_get_controller, ): - result = {"error": "not found", "response": "response", "request-id": 1} mock_get_model.side_effect = JujuAPIError(result)