def test_list_nets_with_default_column(self): cmd = network.ListNetwork(test_cli20.MyApp(sys.stdout), None) returned_body = {"networks": [{"name": "buildname3", "id": "id3", "tenant_id": "tenant_3", "subnets": []}]} self._test_list_nets_columns(cmd, returned_body) _str = self.fake_stdout.make_string() returned_networks = jsonutils.loads(_str) self.assertEqual(1, len(returned_networks)) net = returned_networks[0] self.assertEqual(3, len(net)) self.assertEqual(0, len(set(net) ^ set(cmd.list_columns)))
def test_list_nets_defined_column(self): cmd = network.ListNetwork(test_cli20.MyApp(sys.stdout), None) returned_body = {"networks": [{"name": "buildname3", "id": "id3", "tenant_id": "tenant_3", "subnets": []}]} self._test_list_nets_columns(cmd, returned_body, args=['-f', 'json', '-c', 'id']) _str = self.fake_stdout.make_string() returned_networks = jsonutils.loads(_str) self.assertEqual(1, len(returned_networks)) net = returned_networks[0] self.assertEqual(1, len(net)) self.assertEqual("id", net.keys()[0])
def test_list_agents(self): contents = {'agents': [{'id': 'myname', 'agent_type': 'mytype', 'alive': True}]} args = ['-f', 'json'] resources = "agents" cmd = agent.ListAgent(test_cli20.MyApp(sys.stdout), None) self._test_list_columns(cmd, resources, contents, args) _str = self.fake_stdout.make_string() returned_agents = jsonutils.loads(_str) self.assertEqual(1, len(returned_agents)) ag = returned_agents[0] self.assertEqual(3, len(ag)) self.assertIn("alive", ag.keys())
def test_list_agents_field(self): contents = {'agents': [{'alive': True}]} args = ['-f', 'json'] resources = "agents" smile = ':-)' cmd = agent.ListAgent(test_cli20.MyApp(sys.stdout), None) self._test_list_columns(cmd, resources, contents, args) _str = self.fake_stdout.make_string() returned_agents = jsonutils.loads(_str) self.assertEqual(1, len(returned_agents)) ag = returned_agents[0] self.assertEqual(1, len(ag)) self.assertEqual("alive", ag.keys()[0]) self.assertEqual(smile, ag.values()[0])
def test_list_nets_with_default_column(self): cmd = network.ListNetwork(test_cli20.MyApp(sys.stdout), None) returned_body = { "networks": [{ "name": "buildname3", "id": "id3", "tenant_id": "tenant_3", "subnets": [] }] } self._test_list_nets_columns(cmd, returned_body) _str = self.fake_stdout.make_string() returned_networks = jsonutils.loads(_str) self.assertEqual(1, len(returned_networks)) net = returned_networks[0] self.assertEqual(3, len(net)) self.assertEqual(0, len(set(net) ^ set(cmd.list_columns)))
def test_list_nets_defined_column(self): cmd = network.ListNetwork(test_cli20.MyApp(sys.stdout), None) returned_body = { "networks": [{ "name": "buildname3", "id": "id3", "tenant_id": "tenant_3", "subnets": [] }] } self._test_list_nets_columns(cmd, returned_body, args=['-f', 'json', '-c', 'id']) _str = self.fake_stdout.make_string() returned_networks = jsonutils.loads(_str) self.assertEqual(1, len(returned_networks)) net = returned_networks[0] self.assertEqual(1, len(net)) self.assertIn("id", net.keys())
def _from_json(self, datastring): try: return jsonutils.loads(datastring) except ValueError: msg = _("Cannot understand JSON") raise exception.MalformedResponseBody(reason=msg)