Added diagnostics,sync and touch test cases for v1 designateclient

This patch adds test cases for diagnostics, sync and touch modules
of v1 designateclient.

Change-Id: I2dd1d0093246289426dc045f02660c31ff0f9a38
This commit is contained in:
sonu.kumar 2015-09-03 12:17:57 +05:30
parent 9d3da6c31f
commit dbab707d28
3 changed files with 101 additions and 0 deletions

View File

@ -0,0 +1,30 @@
# Copyright 2015 NEC Corporation. All rights reserved.
#
# 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
from mock import patch
from designateclient.tests import test_v1
from designateclient.v1 import diagnostics
class TestDiagnostics(test_v1.APIV1TestCase, test_v1.CrudMixin):
@patch.object(diagnostics.DiagnosticsController, "ping")
def test_ping(self, ping):
args = mock.MagicMock()
args.service = "foo"
args.host = "host1"
self.client.diagnostics.ping(args.host, args.service)
self.client.diagnostics.ping.assert_called_with("host1", "foo")

View File

@ -0,0 +1,42 @@
# Copyright 2015 NEC Corporation. All rights reserved.
#
# 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
from mock import patch
from designateclient.tests import test_v1
from designateclient.v1 import sync
class TestSync(test_v1.APIV1TestCase, test_v1.CrudMixin):
@patch.object(sync.SyncController, "sync_all")
def test_sync_all(self, sync_all):
self.client.sync.sync_all()
self.client.sync.sync_all.assert_called_with()
@patch.object(sync.SyncController, "sync_domain")
def test_sync_domain(self, sync_domain):
args = mock.MagicMock()
args.tenant_id = "1234"
self.client.sync.sync_domain(args.tenant_id)
self.client.sync.sync_domain.assert_called_with("1234")
@patch.object(sync.SyncController, "sync_record")
def test_sync_record(self, sync_record):
args = mock.MagicMock()
args.tenant_id = "1234"
args.record_id = "uuid"
self.client.sync.sync_record(args.tenant_id, args.record_id)
self.client.sync.sync_record.assert_called_with("1234", "uuid")

View File

@ -0,0 +1,29 @@
# Copyright 2015 NEC Corporation. All rights reserved.
#
# 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
from mock import patch
from designateclient.tests import test_v1
from designateclient.v1 import touch
class TestTouch(test_v1.APIV1TestCase, test_v1.CrudMixin):
@patch.object(touch.TouchController, "domain")
def test_domain(self, domain):
args = mock.MagicMock()
args.domain_id = "1234"
self.client.touch.domain(args.domain_id)
self.client.touch.domain.assert_called_with("1234")