From b3c2668c341da42ce7f193b1035f7ab352538d95 Mon Sep 17 00:00:00 2001
From: lin-hua-cheng <os.lcheng@gmail.com>
Date: Wed, 25 Nov 2015 00:17:49 -0800
Subject: [PATCH] Move FakeServer to tests.common.v2.compute.fakes

FakeServer should not be in tests.fakes since this should
be just for generic re-usable classes.

Change-Id: I19209952de69626dfa3caadc5d1cc69b7feadeba
---
 openstackclient/tests/compute/v2/fakes.py     | 70 +++++++++++++++++++
 .../tests/compute/v2/test_server.py           | 27 ++++---
 openstackclient/tests/fakes.py                | 70 -------------------
 3 files changed, 87 insertions(+), 80 deletions(-)

diff --git a/openstackclient/tests/compute/v2/fakes.py b/openstackclient/tests/compute/v2/fakes.py
index 4ac6a20ea9..32161ddc9f 100644
--- a/openstackclient/tests/compute/v2/fakes.py
+++ b/openstackclient/tests/compute/v2/fakes.py
@@ -13,7 +13,9 @@
 #   under the License.
 #
 
+import copy
 import mock
+import uuid
 
 from openstackclient.tests import fakes
 from openstackclient.tests.identity.v2_0 import fakes as identity_fakes
@@ -139,3 +141,71 @@ class TestComputev2(utils.TestCommand):
             endpoint=fakes.AUTH_URL,
             token=fakes.AUTH_TOKEN,
         )
+
+
+class FakeServer(object):
+    """Fake one or more compute servers."""
+
+    @staticmethod
+    def create_one_server(attrs={}, methods={}):
+        """Create a fake server.
+
+        :param Dictionary attrs:
+            A dictionary with all attributes
+        :param Dictionary methods:
+            A dictionary with all methods
+        :return:
+            A FakeResource object, with id, name, metadata
+        """
+        # Set default attributes.
+        server_info = {
+            'id': 'server-id-' + uuid.uuid4().hex,
+            'name': 'server-name-' + uuid.uuid4().hex,
+            'metadata': {},
+        }
+
+        # Overwrite default attributes.
+        server_info.update(attrs)
+
+        server = fakes.FakeResource(info=copy.deepcopy(server_info),
+                                    methods=methods,
+                                    loaded=True)
+        return server
+
+    @staticmethod
+    def create_servers(attrs={}, methods={}, count=2):
+        """Create multiple fake servers.
+
+        :param Dictionary attrs:
+            A dictionary with all attributes
+        :param Dictionary methods:
+            A dictionary with all methods
+        :param int count:
+            The number of servers to fake
+        :return:
+            A list of FakeResource objects faking the servers
+        """
+        servers = []
+        for i in range(0, count):
+            servers.append(FakeServer.create_one_server(attrs, methods))
+
+        return servers
+
+    @staticmethod
+    def get_servers(servers=None, count=2):
+        """Get an iterable MagicMock object with a list of faked servers.
+
+        If servers list is provided, then initialize the Mock object with the
+        list. Otherwise create one.
+
+        :param List servers:
+            A list of FakeResource objects faking servers
+        :param int count:
+            The number of servers to fake
+        :return:
+            An iterable Mock object with side_effect set to a list of faked
+            servers
+        """
+        if servers is None:
+            servers = FakeServer.create_servers(count)
+        return mock.MagicMock(side_effect=servers)
diff --git a/openstackclient/tests/compute/v2/test_server.py b/openstackclient/tests/compute/v2/test_server.py
index 710ee01bf7..a975a5372a 100644
--- a/openstackclient/tests/compute/v2/test_server.py
+++ b/openstackclient/tests/compute/v2/test_server.py
@@ -61,7 +61,8 @@ class TestServerCreate(TestServer):
         attrs = {
             'networks': {},
         }
-        self.new_server = fakes.FakeServer.create_one_server(attrs=attrs)
+        self.new_server = compute_fakes.FakeServer.create_one_server(
+            attrs=attrs)
 
         # This is the return value for utils.find_resource().
         # This is for testing --wait option.
@@ -398,7 +399,7 @@ class TestServerDelete(TestServer):
     def setUp(self):
         super(TestServerDelete, self).setUp()
 
-        self.server = fakes.FakeServer.create_one_server()
+        self.server = compute_fakes.FakeServer.create_one_server()
 
         # This is the return value for utils.find_resource()
         self.servers_mock.get.return_value = self.server
@@ -476,7 +477,7 @@ class TestServerImageCreate(TestServer):
     def setUp(self):
         super(TestServerImageCreate, self).setUp()
 
-        self.server = fakes.FakeServer.create_one_server()
+        self.server = compute_fakes.FakeServer.create_one_server()
 
         # This is the return value for utils.find_resource()
         self.servers_mock.get.return_value = self.server
@@ -569,11 +570,14 @@ class TestServerPause(TestServer):
         }
 
     def setup_servers_mock(self, count=1):
-        servers = fakes.FakeServer.create_servers(methods=self.methods,
-                                                  count=count)
+        servers = compute_fakes.FakeServer.create_servers(
+            methods=self.methods,
+            count=count)
 
         # This is the return value for utils.find_resource()
-        self.servers_mock.get = fakes.FakeServer.get_servers(servers, 1)
+        self.servers_mock.get = compute_fakes.FakeServer.get_servers(
+            servers,
+            1)
 
         return servers
 
@@ -617,7 +621,7 @@ class TestServerResize(TestServer):
     def setUp(self):
         super(TestServerResize, self).setUp()
 
-        self.server = fakes.FakeServer.create_one_server()
+        self.server = compute_fakes.FakeServer.create_one_server()
 
         # This is the return value for utils.find_resource()
         self.servers_mock.get.return_value = self.server
@@ -806,10 +810,13 @@ class TestShelveServer(TestServer):
         }
 
     def setup_servers_mock(self, count=1):
-        servers = fakes.FakeServer.create_servers(methods=self.methods,
-                                                  count=count)
+        servers = compute_fakes.FakeServer.create_servers(
+            methods=self.methods,
+            count=count)
 
-        self.servers_mock.get = fakes.FakeServer.get_servers(servers, 1)
+        self.servers_mock.get = compute_fakes.FakeServer.get_servers(
+            servers,
+            1)
 
         return servers
 
diff --git a/openstackclient/tests/fakes.py b/openstackclient/tests/fakes.py
index 85e65fb198..9f4dcc50b5 100644
--- a/openstackclient/tests/fakes.py
+++ b/openstackclient/tests/fakes.py
@@ -13,12 +13,10 @@
 #   under the License.
 #
 
-import copy
 import json
 import mock
 import six
 import sys
-import uuid
 
 from keystoneauth1 import fixture
 import requests
@@ -185,71 +183,3 @@ class FakeModel(dict):
             return self[key]
         except KeyError:
             raise AttributeError(key)
-
-
-class FakeServer(object):
-    """Fake one or more compute servers."""
-
-    @staticmethod
-    def create_one_server(attrs={}, methods={}):
-        """Create a fake server.
-
-        :param Dictionary attrs:
-            A dictionary with all attributes
-        :param Dictionary methods:
-            A dictionary with all methods
-        :return:
-            A FakeResource object, with id, name, metadata
-        """
-        # Set default attributes.
-        server_info = {
-            'id': 'server-id-' + uuid.uuid4().hex,
-            'name': 'server-name-' + uuid.uuid4().hex,
-            'metadata': {},
-        }
-
-        # Overwrite default attributes.
-        server_info.update(attrs)
-
-        server = FakeResource(info=copy.deepcopy(server_info),
-                              methods=methods,
-                              loaded=True)
-        return server
-
-    @staticmethod
-    def create_servers(attrs={}, methods={}, count=2):
-        """Create multiple fake servers.
-
-        :param Dictionary attrs:
-            A dictionary with all attributes
-        :param Dictionary methods:
-            A dictionary with all methods
-        :param int count:
-            The number of servers to fake
-        :return:
-            A list of FakeResource objects faking the servers
-        """
-        servers = []
-        for i in range(0, count):
-            servers.append(FakeServer.create_one_server(attrs, methods))
-
-        return servers
-
-    @staticmethod
-    def get_servers(servers=None, count=2):
-        """Get an iterable MagicMock object with a list of faked servers.
-
-        If servers list is provided, then initialize the Mock object with the
-        list. Otherwise create one.
-
-        :param List servers:
-            A list of FakeResource objects faking servers
-        :param int count:
-            The number of servers to fake
-        :return:
-            An iterable Mock object with side_effect set to a list of faked
-            servers
-        """
-        if servers is None:
-            servers = FakeServer.create_servers(count)
-        return mock.MagicMock(side_effect=servers)