Merge "Improved Manage coverage"
This commit is contained in:
commit
870c9f7f67
|
@ -0,0 +1,40 @@
|
|||
# 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.
|
||||
|
||||
|
||||
from unittest import mock
|
||||
|
||||
import oslotest.base
|
||||
|
||||
from designate.manage import base
|
||||
|
||||
|
||||
class TestManageBase(oslotest.base.BaseTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
|
||||
def test_init(self):
|
||||
manage_base = base.Commands()
|
||||
self.assertEqual('designate-manage', manage_base.context.request_id)
|
||||
self.assertEqual([''], manage_base.output_message)
|
||||
|
||||
@mock.patch('builtins.print')
|
||||
def test_print_result(self, mock_print):
|
||||
manage_base = base.Commands()
|
||||
manage_base.output_message.append('foo')
|
||||
manage_base.output_message.append('bar')
|
||||
|
||||
manage_base._print_result()
|
||||
|
||||
self.assertIn(mock.call(''), mock_print.call_args_list)
|
||||
self.assertIn(mock.call('foo'), mock_print.call_args_list)
|
||||
self.assertIn(mock.call('bar'), mock_print.call_args_list)
|
|
@ -0,0 +1,50 @@
|
|||
# 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.
|
||||
|
||||
|
||||
from unittest import mock
|
||||
|
||||
import oslotest.base
|
||||
|
||||
from designate.manage import pool
|
||||
from designate import objects
|
||||
|
||||
|
||||
class TestManagePool(oslotest.base.BaseTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
|
||||
def test_get_masters_from_pool_handle_duplicate(self):
|
||||
result = pool.PoolCommands._get_masters_from_pool(
|
||||
objects.Pool.from_dict({
|
||||
'targets': [
|
||||
{
|
||||
'masters': [
|
||||
{'host': '192.0.2.3', 'port': 53},
|
||||
{'host': '192.0.2.3', 'port': 53}
|
||||
],
|
||||
}
|
||||
]
|
||||
})
|
||||
)
|
||||
|
||||
self.assertEqual([{'host': '192.0.2.3', 'port': 53}], result)
|
||||
|
||||
@mock.patch('yaml.dump')
|
||||
@mock.patch('builtins.open')
|
||||
def test_write_config_to_file(self, mock_open, mock_yaml_dump):
|
||||
pool.PoolCommands._write_config_to_file('filename', 'data')
|
||||
|
||||
mock_open.assert_called_with('filename', 'w')
|
||||
mock_yaml_dump.assert_called_with(
|
||||
'data', mock.ANY, default_flow_style=False
|
||||
)
|
Loading…
Reference in New Issue