tree 320c96c2ca9ed1e92051a9626f4425b690831504
parent b510f47ed447a0c2c09848c4da486a2edb545b77
author Ken'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp> 1382496604 +0900
committer Ken'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp> 1384043163 +0900

Rename to create_test_server in API tests

There are two methods of the name create_server().
The one is a client which just sends a request for creating a server
instance.
The other is BaseComputeTest class' which sends the same request,
registers the created server to the list for deleting it after test,
and waits for the server status change.

They would be confusing due to the same name, and there is unnecessary
addCleanup() calls for deleting a server.

This patch renames the one of BaseComputeTest to create_test_server for
making the difference clear, and removes unnecessary addCleanup() call.

Change-Id: If09fc09f77d27a48dc19dd2dbc47ea460b0c7920
