From d58280a27989ab781cbf2598a6f7c263cb2275e8 Mon Sep 17 00:00:00 2001
From: Tang Chen <chen.tang@easystack.cn>
Date: Mon, 9 May 2016 14:59:39 +0800
Subject: [PATCH] Use find_resource() instead of get() in _prep_server_detail()

There is such a comment in test_server.py:

    # Call .get() to retrieve all of the server information
    # as findall(name=blah) and REST /details are not the same
    # and do not return flavor and image information.

This is an out of date comment. There is no function named
findall() in OSC now. So use find_resource() instead of get(),
and remove this comment.

Change-Id: I8d79afc5f341fb5caf771d905506b7f1c7a41ae8
---
 openstackclient/compute/v2/server.py            |  5 +----
 openstackclient/tests/compute/v2/test_server.py | 12 +++++-------
 2 files changed, 6 insertions(+), 11 deletions(-)

diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index bf9f0985df..d32f7adea0 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -117,10 +117,7 @@ def _prep_server_detail(compute_client, server):
     """
     info = server._info.copy()
 
-    # Call .get() to retrieve all of the server information
-    # as findall(name=blah) and REST /details are not the same
-    # and do not return flavor and image information.
-    server = compute_client.servers.get(info['id'])
+    server = utils.find_resource(compute_client.servers, info['id'])
     info.update(server._info)
 
     # Convert the image blob to a name
diff --git a/openstackclient/tests/compute/v2/test_server.py b/openstackclient/tests/compute/v2/test_server.py
index 2e74545746..dfb7649ec9 100644
--- a/openstackclient/tests/compute/v2/test_server.py
+++ b/openstackclient/tests/compute/v2/test_server.py
@@ -1448,14 +1448,12 @@ class TestServerGeneral(TestServer):
     @mock.patch('openstackclient.common.utils.find_resource')
     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.
+        # 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()
-        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},
@@ -1464,7 +1462,7 @@ class TestServerGeneral(TestServer):
             'links': u'http://xxx.yyy.com',
         }
         _server = compute_fakes.FakeServer.create_one_server(attrs=server_info)
-        self.servers_mock.get.return_value = _server
+        find_resource.side_effect = [_server, _image, _flavor]
 
         # Prepare result data.
         info = {