From 183b3c012fec36a6c9d183b2d7d8dba27f23f28a Mon Sep 17 00:00:00 2001 From: Chris MacNaughton Date: Fri, 10 Apr 2020 11:02:38 +0200 Subject: [PATCH] Add unit tests for new rabbit and mysql helpers --- unit_tests/charm_tests/__init__.py | 13 ++++++++ unit_tests/charm_tests/test_mysql.py | 32 +++++++++++++++++++ .../charm_tests/test_rabbitmq_server.py | 32 +++++++++++++++++++ 3 files changed, 77 insertions(+) create mode 100644 unit_tests/charm_tests/__init__.py create mode 100644 unit_tests/charm_tests/test_mysql.py create mode 100644 unit_tests/charm_tests/test_rabbitmq_server.py diff --git a/unit_tests/charm_tests/__init__.py b/unit_tests/charm_tests/__init__.py new file mode 100644 index 0000000..6131624 --- /dev/null +++ b/unit_tests/charm_tests/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2020 Canonical Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/unit_tests/charm_tests/test_mysql.py b/unit_tests/charm_tests/test_mysql.py new file mode 100644 index 0000000..3493ce9 --- /dev/null +++ b/unit_tests/charm_tests/test_mysql.py @@ -0,0 +1,32 @@ +# Copyright 2020 Canonical Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import mock +import unittest + +import zaza.openstack.charm_tests.mysql.utils as mysql_utils + + +class TestMysqlUtils(unittest.TestCase): + """Test class to encapsulate testing Mysql test utils.""" + + @mock.patch.object(mysql_utils, 'model') + def test_mysql_complete_cluster_series_upgrade(self, mock_model): + run_action_on_leader = mock.MagicMock() + mock_model.run_action_on_leader = run_action_on_leader + mysql_utils.complete_cluster_series_upgrade() + run_action_on_leader.assert_called_once_with( + 'mysql', + 'complete-cluster-series-upgrade', + action_params={}) diff --git a/unit_tests/charm_tests/test_rabbitmq_server.py b/unit_tests/charm_tests/test_rabbitmq_server.py new file mode 100644 index 0000000..8e6ae0d --- /dev/null +++ b/unit_tests/charm_tests/test_rabbitmq_server.py @@ -0,0 +1,32 @@ +# Copyright 2020 Canonical Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import mock +import unittest + +import zaza.openstack.charm_tests.rabbitmq_server.utils as rabbit_utils + + +class TestRabbitUtils(unittest.TestCase): + """Test class to encapsulate testing Mysql test utils.""" + + @mock.patch.object(rabbit_utils.zaza, 'model') + def test_rabbit_complete_cluster_series_upgrade(self, mock_model): + run_action_on_leader = mock.MagicMock() + mock_model.run_action_on_leader = run_action_on_leader + rabbit_utils.complete_cluster_series_upgrade() + run_action_on_leader.assert_called_once_with( + 'rabbitmq-server', + 'complete-cluster-series-upgrade', + action_params={})