github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/compute/v2/availabilityzones_test.go (about)

     1  //go:build acceptance || compute || availabilityzones
     2  // +build acceptance compute availabilityzones
     3  
     4  package v2
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/gophercloud/gophercloud/internal/acceptance/clients"
    10  	"github.com/gophercloud/gophercloud/internal/acceptance/tools"
    11  	"github.com/gophercloud/gophercloud/openstack/compute/v2/extensions/availabilityzones"
    12  	th "github.com/gophercloud/gophercloud/testhelper"
    13  )
    14  
    15  func TestAvailabilityZonesList(t *testing.T) {
    16  	client, err := clients.NewComputeV2Client()
    17  	th.AssertNoErr(t, err)
    18  
    19  	allPages, err := availabilityzones.List(client).AllPages()
    20  	th.AssertNoErr(t, err)
    21  
    22  	availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages)
    23  	th.AssertNoErr(t, err)
    24  
    25  	var found bool
    26  	for _, zoneInfo := range availabilityZoneInfo {
    27  		tools.PrintResource(t, zoneInfo)
    28  
    29  		if zoneInfo.ZoneName == "nova" {
    30  			found = true
    31  		}
    32  	}
    33  
    34  	th.AssertEquals(t, found, true)
    35  }
    36  
    37  func TestAvailabilityZonesListDetail(t *testing.T) {
    38  	clients.RequireAdmin(t)
    39  
    40  	client, err := clients.NewComputeV2Client()
    41  	th.AssertNoErr(t, err)
    42  
    43  	allPages, err := availabilityzones.ListDetail(client).AllPages()
    44  	th.AssertNoErr(t, err)
    45  
    46  	availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages)
    47  	th.AssertNoErr(t, err)
    48  
    49  	var found bool
    50  	for _, zoneInfo := range availabilityZoneInfo {
    51  		tools.PrintResource(t, zoneInfo)
    52  
    53  		if zoneInfo.ZoneName == "nova" {
    54  			found = true
    55  		}
    56  	}
    57  
    58  	th.AssertEquals(t, found, true)
    59  }