github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/internal/acceptance/openstack/identity/v2/extension_test.go (about)

     1  //go:build acceptance || identity || extensions
     2  
     3  package v2
     4  
     5  import (
     6  	"context"
     7  	"testing"
     8  
     9  	"github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/clients"
    10  	"github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/tools"
    11  	"github.com/vnpaycloud-console/gophercloud/v2/openstack/identity/v2/extensions"
    12  	th "github.com/vnpaycloud-console/gophercloud/v2/testhelper"
    13  )
    14  
    15  func TestExtensionsList(t *testing.T) {
    16  	clients.RequireIdentityV2(t)
    17  	clients.RequireAdmin(t)
    18  
    19  	client, err := clients.NewIdentityV2Client()
    20  	th.AssertNoErr(t, err)
    21  
    22  	allPages, err := extensions.List(client).AllPages(context.TODO())
    23  	th.AssertNoErr(t, err)
    24  
    25  	allExtensions, err := extensions.ExtractExtensions(allPages)
    26  	th.AssertNoErr(t, err)
    27  
    28  	var found bool
    29  	for _, extension := range allExtensions {
    30  		tools.PrintResource(t, extension)
    31  		if extension.Name == "OS-KSCRUD" {
    32  			found = true
    33  		}
    34  	}
    35  
    36  	th.AssertEquals(t, found, true)
    37  }
    38  
    39  func TestExtensionsGet(t *testing.T) {
    40  	clients.RequireIdentityV2(t)
    41  	clients.RequireAdmin(t)
    42  
    43  	client, err := clients.NewIdentityV2Client()
    44  	th.AssertNoErr(t, err)
    45  
    46  	extension, err := extensions.Get(context.TODO(), client, "OS-KSCRUD").Extract()
    47  	th.AssertNoErr(t, err)
    48  
    49  	tools.PrintResource(t, extension)
    50  }