From 569ff3dcd88b5e18501a8d5356f3bf4693bde17c Mon Sep 17 00:00:00 2001 From: Tang Chen Date: Fri, 27 Nov 2015 19:01:46 +0800 Subject: Abstract a helper function for server.xxx() tests. The test cases for server.xxx() are all the same, with one or more faked servers. So use a helper function to reduce code duplicate. Change-Id: I660c7731e2de8bf4d815b414a621d8d9ca6d5a8b Implements: blueprint osc-unit-test-framework-improvement --- openstackclient/tests/compute/v2/test_server.py | 83 +++++++------------------ 1 file changed, 24 insertions(+), 59 deletions(-) (limited to 'openstackclient') diff --git a/openstackclient/tests/compute/v2/test_server.py b/openstackclient/tests/compute/v2/test_server.py index 5f6880ed..32b405e2 100644 --- a/openstackclient/tests/compute/v2/test_server.py +++ b/openstackclient/tests/compute/v2/test_server.py @@ -63,9 +63,28 @@ class TestServer(compute_fakes.TestComputev2): # This is the return value for utils.find_resource() self.servers_mock.get = compute_fakes.FakeServer.get_servers(servers, 0) - return servers + def run_method_with_servers(self, method_name, server_count): + servers = self.setup_servers_mock(server_count) + + arglist = [] + verifylist = [] + + for s in servers: + arglist.append(s.id) + verifylist = [ + ('server', arglist), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # DisplayCommandBase.take_action() returns two tuples + self.cmd.take_action(parsed_args) + + for s in servers: + method = getattr(s, method_name) + method.assert_called_with() + class TestServerCreate(TestServer): @@ -606,38 +625,10 @@ class TestServerPause(TestServer): } def test_server_pause_one_server(self): - servers = self.setup_servers_mock(1) - - arglist = [ - servers[0].id, - ] - verifylist = [ - ('server', [servers[0].id]), - ] - parsed_args = self.check_parser(self.cmd, arglist, verifylist) - - # DisplayCommandBase.take_action() returns two tuples - self.cmd.take_action(parsed_args) - - servers[0].pause.assert_called_with() + self.run_method_with_servers('pause', 1) def test_server_pause_multi_servers(self): - servers = self.setup_servers_mock(3) - arglist = [] - verifylist = [] - - for i in range(0, len(servers)): - arglist.append(servers[i].id) - verifylist = [ - ('server', arglist), - ] - parsed_args = self.check_parser(self.cmd, arglist, verifylist) - - # DisplayCommandBase.take_action() returns two tuples - self.cmd.take_action(parsed_args) - - for i in range(0, len(servers)): - servers[i].pause.assert_called_with() + self.run_method_with_servers('pause', 3) class TestServerResize(TestServer): @@ -834,33 +825,7 @@ class TestShelveServer(TestServer): } def test_shelve_one_server(self): - server = self.setup_servers_mock(1)[0] - - arglist = [ - server.id, - ] - verifylist = [ - ('server', [server.id]), - ] - parsed_args = self.check_parser(self.cmd, arglist, verifylist) - - self.cmd.take_action(parsed_args) - - server.shelve.assert_called_with() + self.run_method_with_servers('shelve', 1) def test_shelve_multi_servers(self): - servers = self.setup_servers_mock(3) - arglist = [] - verifylist = [] - - for i in range(0, len(servers)): - arglist.append(servers[i].id) - verifylist = [ - ('server', arglist), - ] - parsed_args = self.check_parser(self.cmd, arglist, verifylist) - - self.cmd.take_action(parsed_args) - - for i in range(0, len(servers)): - servers[i].shelve.assert_called_with() + self.run_method_with_servers('shelve', 3) -- cgit v1.2.1