Most of the evacuate tests in nova.tests.functional.test_server_group
could produce false positive results becuase of multiple reasons:
* test did not wait for the migration to finish in done or error state
before checked the instance host
* test did not asserted that the instance host is changed during the
evacuation
Also the evacuation tests that starts up a third compute failed to add
the magic fake.set_nodes() call making the third node unusable and
causing unexpected NoValidHost during the evacuation. However it was
not visible until the above mistakes are fixed in the test
Closes-Bug: #1739013
Conflicts:
nova/tests/functional/test_servers.py
NOTE(melwitt): The conflict was from methods in Pike that don't exist
in Ocata. Also, in Ocata, conductor doesn't set the migration status
to 'error' upon NoValidHost during rebuild so we can't wait for that
in the tests.
Change-Id: Idc4e3d8ac7c99c09c6f4860dc0c7a05f28a35627
(cherry picked from commit ec04052736)
(cherry picked from commit 1558893de1)