From c286722965ce7f5ea9acc201aa9cf289cfe16105 Mon Sep 17 00:00:00 2001
From: "zhiyong.dai" <zhiyong.dai@easystack.cn>
Date: Sun, 27 Nov 2016 20:32:36 +0800
Subject: [PATCH] Refactor availability zone functional test

Using json format output in availability zone list functional test

Change-Id: I7098b1c3bee680e47e414dcb4fa272628cdec1eb
---
 .../common/test_availability_zone.py          | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/openstackclient/tests/functional/common/test_availability_zone.py b/openstackclient/tests/functional/common/test_availability_zone.py
index f73e1ed956..025da95c24 100644
--- a/openstackclient/tests/functional/common/test_availability_zone.py
+++ b/openstackclient/tests/functional/common/test_availability_zone.py
@@ -10,16 +10,23 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+import json
+
 from openstackclient.tests.functional import base
 
 
 class AvailabilityZoneTests(base.TestCase):
     """Functional tests for availability zone. """
-    HEADERS = ["'Zone Name'"]
-    # So far, all components have the same default availability zone name.
-    DEFAULT_AZ_NAME = 'nova'
 
     def test_availability_zone_list(self):
-        opts = self.get_opts(self.HEADERS)
-        raw_output = self.openstack('availability zone list' + opts)
-        self.assertIn(self.DEFAULT_AZ_NAME, raw_output)
+        cmd_output = json.loads(self.openstack(
+            'availability zone list -f json'))
+        zones = [x['Zone Name'] for x in cmd_output]
+        self.assertIn(
+            'internal',
+            zones
+        )
+        self.assertIn(
+            'nova',
+            zones
+        )