def test_format_servers_list_power_state(self): self.assertEqual("NOSTATE", server._format_servers_list_power_state(0x00)) self.assertEqual("Running", server._format_servers_list_power_state(0x01)) self.assertEqual("", server._format_servers_list_power_state(0x02)) self.assertEqual("Paused", server._format_servers_list_power_state(0x03)) self.assertEqual("Shutdown", server._format_servers_list_power_state(0x04)) self.assertEqual("", server._format_servers_list_power_state(0x05)) self.assertEqual("Crashed", server._format_servers_list_power_state(0x06)) self.assertEqual("Suspended", server._format_servers_list_power_state(0x07)) self.assertEqual("N/A", server._format_servers_list_power_state(0x08))
def test_prep_server_detail(self, find_resource): # Setup mock method return value. utils.find_resource() will be called # three times in _prep_server_detail(): # - The first time, return server info. # - The second time, return image info. # - The third time, return flavor info. _image = image_fakes.FakeImage.create_one_image() _flavor = compute_fakes.FakeFlavor.create_one_flavor() server_info = { 'image': { u'id': _image.id }, 'flavor': { u'id': _flavor.id }, 'tenant_id': u'tenant-id-xxx', 'networks': { u'public': [u'10.20.30.40', u'2001:db8::f'] }, 'links': u'http://xxx.yyy.com', } _server = compute_fakes.FakeServer.create_one_server(attrs=server_info) find_resource.side_effect = [_server, _image, _flavor] # Prepare result data. info = { 'id': _server.id, 'name': _server.name, 'addresses': u'public=10.20.30.40, 2001:db8::f', 'flavor': u'%s (%s)' % (_flavor.name, _flavor.id), 'image': u'%s (%s)' % (_image.name, _image.id), 'project_id': u'tenant-id-xxx', 'properties': '', 'OS-EXT-STS:power_state': server._format_servers_list_power_state( getattr(_server, 'OS-EXT-STS:power_state')), } # Call _prep_server_detail(). server_detail = server._prep_server_detail( self.app.client_manager.compute, _server) # 'networks' is used to create _server. Remove it. server_detail.pop('networks') # Check the results. self.assertDictEqual(info, server_detail)
def datalist(self): datalist = ( server._format_servers_list_power_state( getattr(self.new_server, 'OS-EXT-STS:power_state')), '', self.flavor.name + ' (' + self.new_server.flavor.get('id') + ')', self.new_server.id, self.image.name + ' (' + self.new_server.image.get('id') + ')', self.new_server.name, self.new_server.networks, '', ) return datalist
def setUp(self): super(TestServerList, self).setUp() # The fake servers' attributes. Use the original attributes names in # nova, not the ones printed by "server list" command. self.attrs = { 'status': 'ACTIVE', 'OS-EXT-STS:task_state': 'None', 'OS-EXT-STS:power_state': 0x01, # Running 'networks': { u'public': [u'10.20.30.40', u'2001:db8::5'] }, 'OS-EXT-AZ:availability_zone': 'availability-zone-xxx', 'OS-EXT-SRV-ATTR:host': 'host-name-xxx', 'Metadata': '', } # The servers to be listed. self.servers = self.setup_servers_mock(3) self.servers_mock.list.return_value = self.servers # Get the command object to test self.cmd = server.ListServer(self.app, None) # Prepare data returned by fake Nova API. self.data = [] self.data_long = [] for s in self.servers: self.data.append(( s.id, s.name, s.status, server._format_servers_list_networks(s.networks), )) self.data_long.append(( s.id, s.name, s.status, getattr(s, 'OS-EXT-STS:task_state'), server._format_servers_list_power_state( getattr(s, 'OS-EXT-STS:power_state') ), server._format_servers_list_networks(s.networks), getattr(s, 'OS-EXT-AZ:availability_zone'), getattr(s, 'OS-EXT-SRV-ATTR:host'), s.Metadata, ))
def setUp(self): super(TestServerList, self).setUp() # The fake servers' attributes. Use the original attributes names in # nova, not the ones printed by "server list" command. self.attrs = { 'status': 'ACTIVE', 'OS-EXT-STS:task_state': 'None', 'OS-EXT-STS:power_state': 0x01, # Running 'networks': { u'public': [u'10.20.30.40', u'2001:db8::5'] }, 'OS-EXT-AZ:availability_zone': 'availability-zone-xxx', 'OS-EXT-SRV-ATTR:host': 'host-name-xxx', 'Metadata': '', } # The servers to be listed. self.servers = self.setup_servers_mock(3) self.servers_mock.list.return_value = self.servers # Get the command object to test self.cmd = server.ListServer(self.app, None) # Prepare data returned by fake Nova API. self.data = [] self.data_long = [] for s in self.servers: self.data.append(( s.id, s.name, s.status, server._format_servers_list_networks(s.networks), )) self.data_long.append(( s.id, s.name, s.status, getattr(s, 'OS-EXT-STS:task_state'), server._format_servers_list_power_state( getattr(s, 'OS-EXT-STS:power_state')), server._format_servers_list_networks(s.networks), getattr(s, 'OS-EXT-AZ:availability_zone'), getattr(s, 'OS-EXT-SRV-ATTR:host'), s.Metadata, ))
def test_prep_server_detail(self, find_resource): # Setup mock method return value. utils.find_resource() will be called # twice in _prep_server_detail(): # - The first time, return image info. # - The second time, return flavor info. _image = image_fakes.FakeImage.create_one_image() _flavor = compute_fakes.FakeFlavor.create_one_flavor() find_resource.side_effect = [_image, _flavor] # compute_client.servers.get() will be called once, return server info. server_info = { 'image': {u'id': _image.id}, 'flavor': {u'id': _flavor.id}, 'tenant_id': u'tenant-id-xxx', 'networks': {u'public': [u'10.20.30.40', u'2001:db8::f']}, 'links': u'http://xxx.yyy.com', } _server = compute_fakes.FakeServer.create_one_server(attrs=server_info) self.servers_mock.get.return_value = _server # Prepare result data. info = { 'id': _server.id, 'name': _server.name, 'addresses': u'public=10.20.30.40, 2001:db8::f', 'flavor': u'%s (%s)' % (_flavor.name, _flavor.id), 'image': u'%s (%s)' % (_image.name, _image.id), 'project_id': u'tenant-id-xxx', 'properties': '', 'OS-EXT-STS:power_state': server._format_servers_list_power_state( getattr(_server, 'OS-EXT-STS:power_state')), } # Call _prep_server_detail(). server_detail = server._prep_server_detail( self.app.client_manager.compute, _server ) # 'networks' is used to create _server. Remove it. server_detail.pop('networks') # Check the results. self.assertDictEqual(info, server_detail)
def setUp(self): super(TestServerList, self).setUp() # The fake servers' attributes. Use the original attributes names in # nova, not the ones printed by "server list" command. self.attrs = { "status": "ACTIVE", "OS-EXT-STS:task_state": "None", "OS-EXT-STS:power_state": 0x01, # Running "networks": {u"public": [u"10.20.30.40", u"2001:db8::5"]}, "OS-EXT-AZ:availability_zone": "availability-zone-xxx", "OS-EXT-SRV-ATTR:host": "host-name-xxx", "Metadata": "", } # The servers to be listed. self.servers = self.setup_servers_mock(3) self.servers_mock.list.return_value = self.servers # Get the command object to test self.cmd = server.ListServer(self.app, None) # Prepare data returned by fake Nova API. self.data = [] self.data_long = [] for s in self.servers: self.data.append((s.id, s.name, s.status, server._format_servers_list_networks(s.networks))) self.data_long.append( ( s.id, s.name, s.status, getattr(s, "OS-EXT-STS:task_state"), server._format_servers_list_power_state(getattr(s, "OS-EXT-STS:power_state")), server._format_servers_list_networks(s.networks), getattr(s, "OS-EXT-AZ:availability_zone"), getattr(s, "OS-EXT-SRV-ATTR:host"), s.Metadata, ) )
def setUp(self): super(TestServerList, self).setUp() self.search_opts = { 'reservation_id': None, 'ip': None, 'ip6': None, 'name': None, 'instance_name': None, 'status': None, 'flavor': None, 'image': None, 'host': None, 'tenant_id': None, 'all_tenants': False, 'user_id': None, } # Default params of the core function of the command in the case of no # commandline option specified. self.kwargs = { 'search_opts': self.search_opts, 'marker': None, 'limit': None, } # The fake servers' attributes. Use the original attributes names in # nova, not the ones printed by "server list" command. self.attrs = { 'status': 'ACTIVE', 'OS-EXT-STS:task_state': 'None', 'OS-EXT-STS:power_state': 0x01, # Running 'networks': { u'public': [u'10.20.30.40', u'2001:db8::5'] }, 'OS-EXT-AZ:availability_zone': 'availability-zone-xxx', 'OS-EXT-SRV-ATTR:host': 'host-name-xxx', 'Metadata': '', } # The servers to be listed. self.servers = self.setup_servers_mock(3) self.servers_mock.list.return_value = self.servers self.image = image_fakes.FakeImage.create_one_image() self.cimages_mock.get.return_value = self.image self.flavor = compute_fakes.FakeFlavor.create_one_flavor() self.flavors_mock.get.return_value = self.flavor # Get the command object to test self.cmd = server.ListServer(self.app, None) # Prepare data returned by fake Nova API. self.data = [] self.data_long = [] for s in self.servers: self.data.append(( s.id, s.name, s.status, server._format_servers_list_networks(s.networks), )) self.data_long.append(( s.id, s.name, s.status, getattr(s, 'OS-EXT-STS:task_state'), server._format_servers_list_power_state( getattr(s, 'OS-EXT-STS:power_state') ), server._format_servers_list_networks(s.networks), getattr(s, 'OS-EXT-AZ:availability_zone'), getattr(s, 'OS-EXT-SRV-ATTR:host'), s.Metadata, ))