1010# License for the specific language governing permissions and limitations
1111# under the License.
1212
13+ import json
1314import time
1415
1516from tempest .lib .common .utils import data_utils
@@ -59,12 +60,10 @@ def server_create(self, name=None):
5960 """Create server. Add cleanup."""
6061 name = name or data_utils .rand_uuid ()
6162 opts = self .get_opts (self .FIELDS )
62- flavor = self .get_flavor ()
63- image = self .get_image ()
64- network = self .get_network ()
6563 raw_output = self .openstack ('--debug server create --flavor ' +
66- flavor +
67- ' --image ' + image + network + ' ' +
64+ self .flavor_name +
65+ ' --image ' + self .image_name +
66+ self .network_arg + ' ' +
6867 name + opts )
6968 if not raw_output :
7069 self .fail ('Server has not been created!' )
@@ -82,6 +81,10 @@ def server_delete(self, name):
8281 def setUp (self ):
8382 """Set necessary variables and create server."""
8483 super (ServerTests , self ).setUp ()
84+ self .flavor_name = self .get_flavor ()
85+ self .image_name = self .get_image ()
86+ self .network_arg = self .get_network ()
87+
8588 self .NAME = data_utils .rand_name ('TestServer' )
8689 self .OTHER_NAME = data_utils .rand_name ('TestServer' )
8790 self .HEADERS = ['"Name"' ]
@@ -119,16 +122,47 @@ def test_server_list(self):
119122 self .assertIn (self .NAME , raw_output )
120123
121124 def test_server_show (self ):
122- """Test server show command.
123-
124- Test steps:
125- 1) Boot server in setUp
126- 2) Show server
127- 3) Check output
128- """
129- opts = self .get_opts (self .FIELDS )
130- raw_output = self .openstack ('server show ' + self .NAME + opts )
131- self .assertEqual (self .NAME + "\n " , raw_output )
125+ """Test server create, server delete commands"""
126+ name1 = data_utils .rand_name ('TestServer' )
127+ cmd_output = json .loads (self .openstack (
128+ 'server create -f json ' +
129+ '--flavor ' + self .flavor_name + ' ' +
130+ '--image ' + self .image_name + ' ' +
131+ self .network_arg + ' ' +
132+ name1
133+ ))
134+ self .assertIsNotNone (cmd_output ["id" ])
135+ self .addCleanup (self .openstack , 'server delete ' + name1 )
136+ self .assertEqual (
137+ name1 ,
138+ cmd_output ["name" ],
139+ )
140+
141+ # Have a look at some other fields
142+ flavor = json .loads (self .openstack (
143+ 'flavor show -f json ' +
144+ self .flavor_name
145+ ))
146+ self .assertEqual (
147+ self .flavor_name ,
148+ flavor ['name' ],
149+ )
150+ self .assertEqual (
151+ '%s (%s)' % (flavor ['name' ], flavor ['id' ]),
152+ cmd_output ["flavor" ],
153+ )
154+ image = json .loads (self .openstack (
155+ 'image show -f json ' +
156+ self .image_name
157+ ))
158+ self .assertEqual (
159+ self .image_name ,
160+ image ['name' ],
161+ )
162+ self .assertEqual (
163+ '%s (%s)' % (image ['name' ], image ['id' ]),
164+ cmd_output ["image" ],
165+ )
132166
133167 def test_server_metadata (self ):
134168 """Test command to set server metadata.
0 commit comments