Fixes bug 960864- Testcases for the action list Volumes and list Volumes with Detail

Change-Id: I37fca6a72d6e998bd8e084deea4388a6e897ae96
diff --git a/tempest/tests/test_volumes_list.py b/tempest/tests/test_volumes_list.py
new file mode 100644
index 0000000..4a4c7d1
--- /dev/null
+++ b/tempest/tests/test_volumes_list.py
@@ -0,0 +1,59 @@
+from nose.plugins.attrib import attr
+import unittest2 as unittest
+from tempest import openstack
+from tempest.common.utils.data_utils import rand_name
+
+
+class VolumesTest(unittest.TestCase):
+
+    @classmethod
+    def setUpClass(cls):
+        cls.os = openstack.Manager()
+        cls.client = cls.os.volumes_client
+        #Create 3 Volumes
+        cls.volume_list = list()
+        cls.volume_id_list = list()
+        for i in range(3):
+            v_name = rand_name('Name-')
+            metadata = {'Type': 'work'}
+            resp, volume = cls.client.create_volume(size=1,
+                                                     display_name=v_name,
+                                                     metadata=metadata)
+            cls.client.wait_for_volume_status(volume['id'],
+                                               'available')
+            resp, volume = cls.client.get_volume(volume['id'])
+            cls.volume_list.append(volume)
+            cls.volume_id_list.append(volume['id'])
+
+    def teardown(cls):
+        #Delete the created Volumes
+        for i in range(3):
+            resp, _ = cls.client.delete_volume(cls.volume_id_list[i])
+
+    @attr(type='smoke')
+    def test_volume_list(self):
+        """Should return the list of Volumes"""
+        #Fetch all Volumes
+        resp, fetched_list = self.client.list_volumes()
+        self.assertEqual(200, resp.status)
+        #Now check if all the Volumes created in setup are in fetched list
+        missing_volumes =\
+        [v for v in self.volume_list if v not in fetched_list]
+        self.assertFalse(missing_volumes,
+                         "Failed to find volume %s in fetched list"
+                         % ', '.join(m_vol['displayName']
+                                        for m_vol in missing_volumes))
+
+    @attr(type='smoke')
+    def test_volume_list_with_details(self):
+        """Should return the list of Volumes with details"""
+        #Fetch all Volumes
+        resp, fetched_list = self.client.list_volumes_with_detail()
+        self.assertEqual(200, resp.status)
+        #Now check if all the Volumes created in setup are in fetched list
+        missing_volumes =\
+        [v for v in self.volume_list if v not in fetched_list]
+        self.assertFalse(missing_volumes,
+                         "Failed to find volume %s in fetched list"
+                         % ', '.join(m_vol['displayName']
+                                        for m_vol in missing_volumes))