blob: 6fe8a7a2a0add7e5da67aae3cd6f7d3d6d23d54d [file] [log] [blame]
Ash Wilsonfd794d52014-09-03 14:30:43 -04001// +build acceptance
2
3package v3
4
5import (
6 "testing"
7
8 "github.com/rackspace/gophercloud/openstack"
9 services3 "github.com/rackspace/gophercloud/openstack/identity/v3/services"
10 "github.com/rackspace/gophercloud/openstack/utils"
11)
12
13func TestListServices(t *testing.T) {
14 // Obtain credentials from the environment.
15 ao, err := utils.AuthOptions()
16 if err != nil {
17 t.Fatalf("Unable to acquire credentials: %v", err)
18 }
19
20 // Trim out unused fields.
21 ao.TenantID, ao.TenantName = "", ""
22
23 // Create an authenticated client.
24 providerClient, err := openstack.AuthenticatedClient(ao)
25 if err != nil {
26 t.Fatalf("Unable to instantiate client: %v", err)
27 }
28
29 // Create a service client.
30 serviceClient := openstack.NewIdentityV3(providerClient)
31
32 // Use the service to create a token.
33 results, err := services3.List(serviceClient, services3.ListOpts{})
34 if err != nil {
35 t.Fatalf("Unable to get token: %v", err)
36 }
37
38 for _, service := range results.Services {
39 t.Logf("Service: %32s %15s %10s %s", service.ID, service.Type, service.Name, *service.Description)
40 }
41}