github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/identity/v2/roles/testing/requests_test.go (about)

     1  package testing
     2  
     3  import (
     4  	"context"
     5  	"testing"
     6  
     7  	"github.com/vnpaycloud-console/gophercloud/v2/openstack/identity/v2/roles"
     8  	"github.com/vnpaycloud-console/gophercloud/v2/pagination"
     9  	th "github.com/vnpaycloud-console/gophercloud/v2/testhelper"
    10  	"github.com/vnpaycloud-console/gophercloud/v2/testhelper/client"
    11  )
    12  
    13  func TestRole(t *testing.T) {
    14  	th.SetupHTTP()
    15  	defer th.TeardownHTTP()
    16  
    17  	MockListRoleResponse(t)
    18  
    19  	count := 0
    20  
    21  	err := roles.List(client.ServiceClient()).EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) {
    22  		count++
    23  		actual, err := roles.ExtractRoles(page)
    24  		if err != nil {
    25  			t.Errorf("Failed to extract users: %v", err)
    26  			return false, err
    27  		}
    28  
    29  		expected := []roles.Role{
    30  			{
    31  				ID:          "123",
    32  				Name:        "compute:admin",
    33  				Description: "Nova Administrator",
    34  			},
    35  		}
    36  
    37  		th.CheckDeepEquals(t, expected, actual)
    38  
    39  		return true, nil
    40  	})
    41  
    42  	th.AssertNoErr(t, err)
    43  	th.AssertEquals(t, 1, count)
    44  }
    45  
    46  func TestAddUser(t *testing.T) {
    47  	th.SetupHTTP()
    48  	defer th.TeardownHTTP()
    49  
    50  	MockAddUserRoleResponse(t)
    51  
    52  	err := roles.AddUser(context.TODO(), client.ServiceClient(), "{tenant_id}", "{user_id}", "{role_id}").ExtractErr()
    53  
    54  	th.AssertNoErr(t, err)
    55  }
    56  
    57  func TestDeleteUser(t *testing.T) {
    58  	th.SetupHTTP()
    59  	defer th.TeardownHTTP()
    60  
    61  	MockDeleteUserRoleResponse(t)
    62  
    63  	err := roles.DeleteUser(context.TODO(), client.ServiceClient(), "{tenant_id}", "{user_id}", "{role_id}").ExtractErr()
    64  
    65  	th.AssertNoErr(t, err)
    66  }