
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)


import json

from openstackclient.tests.functional import base


class AvailabilityZoneTests(base.TestCase):
    """Functional tests for availability zone. """

    def test_availability_zone_list(self):
        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
        )

Refactor availability zone functional test
Refactor availability zone functional test

Using json format output in availability zone list functional test

Change-Id: I7098b1c3bee680e47e414dcb4fa272628cdec1eb

+ 
+ 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
+         )
  
Refactor availability zone functional test
## Code Before:

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)

## Instruction:
Refactor availability zone functional test
## Code After:

import json

from openstackclient.tests.functional import base


class AvailabilityZoneTests(base.TestCase):
    """Functional tests for availability zone. """

    def test_availability_zone_list(self):
        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
        )
