class TestShowNetworkAgent(TestNetworkAgent): _network_agent = ( network_fakes.FakeNetworkAgent.create_one_network_agent()) columns = ( 'admin_state_up', 'agent_type', 'alive', 'availability_zone', 'binary', 'configurations', 'host', 'id', ) data = ( network_agent._format_admin_state(_network_agent.admin_state_up), _network_agent.agent_type, _network_agent.alive, _network_agent.availability_zone, _network_agent.binary, utils.format_dict(_network_agent.configurations), _network_agent.host, _network_agent.id, ) def setUp(self): super(TestShowNetworkAgent, self).setUp() self.network.get_agent = mock.Mock( return_value=self._network_agent) # Get the command object to test self.cmd = network_agent.ShowNetworkAgent(self.app, self.namespace) def test_show_no_options(self): arglist = [] verifylist = [] # Missing required args should bail here self.assertRaises(tests_utils.ParserException, self.check_parser, self.cmd, arglist, verifylist) def test_show_all_options(self): arglist = [ self._network_agent.id, ] verifylist = [ ('network_agent', self._network_agent.id), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.get_agent.assert_called_once_with( self._network_agent.id) self.assertEqual(self.columns, columns) self.assertEqual(list(self.data), list(data))
class TestListNetworkAgent(TestNetworkAgent): network_agents = (network_fakes.FakeNetworkAgent.create_network_agents( count=3)) columns = ('ID', 'Agent Type', 'Host', 'Availability Zone', 'Alive', 'State', 'Binary') data = [] for agent in network_agents: data.append(( agent.id, agent.agent_type, agent.host, agent.availability_zone, agent.alive, network_agent._format_admin_state(agent.admin_state_up), agent.binary, )) def setUp(self): super(TestListNetworkAgent, self).setUp() self.network.agents = mock.Mock(return_value=self.network_agents) # Get the command object to test self.cmd = network_agent.ListNetworkAgent(self.app, self.namespace) def test_network_agents_list(self): arglist = [] verifylist = [] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with(**{}) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data))
class TestListNetworkAgent(TestNetworkAgent): network_agents = (network_fakes.FakeNetworkAgent.create_network_agents( count=3)) columns = ('ID', 'Agent Type', 'Host', 'Availability Zone', 'Alive', 'State', 'Binary') data = [] for agent in network_agents: agent.agent_type = 'DHCP agent' data.append(( agent.id, agent.agent_type, agent.host, agent.availability_zone, agent.alive, network_agent._format_admin_state(agent.admin_state_up), agent.binary, )) network_agent_columns = ( 'ID', 'Host', 'Admin State Up', 'Alive', ) network_agent_data = [] for agent in network_agents: network_agent_data.append(( agent.id, agent.host, network_agent._format_admin_state(agent.admin_state_up), agent.alive, )) def setUp(self): super(TestListNetworkAgent, self).setUp() self.network.agents = mock.Mock(return_value=self.network_agents) _testagent = \ network_fakes.FakeNetworkAgent.create_one_network_agent() self.network.get_agent = mock.Mock(return_value=_testagent) self._testnetwork = network_fakes.FakeNetwork.create_one_network() self.network.find_network = mock.Mock(return_value=self._testnetwork) self.network.network_hosting_dhcp_agents = mock.Mock( return_value=self.network_agents) # Get the command object to test self.cmd = network_agent.ListNetworkAgent(self.app, self.namespace) def test_network_agents_list(self): arglist = [] verifylist = [] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with(**{}) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_agent_type(self): arglist = [ '--agent-type', 'dhcp', ] verifylist = [ ('agent_type', 'dhcp'), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with( **{ 'agent_type': self.network_agents[0].agent_type, }) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_host(self): arglist = [ '--host', self.network_agents[0].host, ] verifylist = [ ('host', self.network_agents[0].host), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with( **{ 'host': self.network_agents[0].host, }) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_networks(self): arglist = [ '--network', self._testnetwork.id, ] verifylist = [ ('network', self._testnetwork.id), ] attrs = { self._testnetwork, } parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.network_hosting_dhcp_agents.assert_called_once_with( *attrs) self.assertEqual(self.network_agent_columns, columns) self.assertEqual(list(self.network_agent_data), list(data))
class TestListNetworkAgent(TestNetworkAgent): network_agents = (network_fakes.FakeNetworkAgent.create_network_agents( count=3)) columns = ('ID', 'Agent Type', 'Host', 'Availability Zone', 'Alive', 'State', 'Binary') data = [] for agent in network_agents: data.append(( agent.id, agent.agent_type, agent.host, agent.availability_zone, network_agent._format_alive(agent.alive), network_agent._format_admin_state(agent.admin_state_up), agent.binary, )) def setUp(self): super(TestListNetworkAgent, self).setUp() self.network.agents = mock.Mock(return_value=self.network_agents) _testagent = \ network_fakes.FakeNetworkAgent.create_one_network_agent() self.network.get_agent = mock.Mock(return_value=_testagent) self._testnetwork = network_fakes.FakeNetwork.create_one_network() self.network.find_network = mock.Mock(return_value=self._testnetwork) self.network.network_hosting_dhcp_agents = mock.Mock( return_value=self.network_agents) self.network.get_agent = mock.Mock(return_value=_testagent) self._testrouter = \ network_fakes.FakeRouter.create_one_router() self.network.find_router = mock.Mock(return_value=self._testrouter) self.network.routers_hosting_l3_agents = mock.Mock( return_value=self.network_agents) # Get the command object to test self.cmd = network_agent.ListNetworkAgent(self.app, self.namespace) def test_network_agents_list(self): arglist = [] verifylist = [] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with(**{}) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_agent_type(self): arglist = [ '--agent-type', 'dhcp', ] verifylist = [ ('agent_type', 'dhcp'), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with(**{ 'agent_type': 'DHCP agent', }) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_host(self): arglist = [ '--host', self.network_agents[0].host, ] verifylist = [ ('host', self.network_agents[0].host), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.agents.assert_called_once_with( **{ 'host': self.network_agents[0].host, }) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_networks(self): arglist = [ '--network', self._testnetwork.id, ] verifylist = [ ('network', self._testnetwork.id), ] attrs = { self._testnetwork, } parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.network_hosting_dhcp_agents.assert_called_once_with( *attrs) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_routers(self): arglist = [ '--router', self._testrouter.id, ] verifylist = [('router', self._testrouter.id), ('long', False)] attrs = { self._testrouter, } parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.routers_hosting_l3_agents.assert_called_once_with(*attrs) self.assertEqual(self.columns, columns) self.assertEqual(self.data, list(data)) def test_network_agents_list_routers_with_long_option(self): arglist = [ '--router', self._testrouter.id, '--long', ] verifylist = [('router', self._testrouter.id), ('long', True)] attrs = { self._testrouter, } parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) self.network.routers_hosting_l3_agents.assert_called_once_with(*attrs) # Add a column 'HA State' and corresponding data. router_agent_columns = self.columns + ('HA State', ) router_agent_data = [d + ('', ) for d in self.data] self.assertEqual(router_agent_columns, columns) self.assertEqual(router_agent_data, list(data))