github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/dms/v2/users_test.go (about)

     1  package v2
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/clients"
     7  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/tools"
     8  	"github.com/opentelekomcloud/gophertelekomcloud/openstack/dms/v1/permissions"
     9  	"github.com/opentelekomcloud/gophertelekomcloud/openstack/dms/v2/users"
    10  	th "github.com/opentelekomcloud/gophertelekomcloud/testhelper"
    11  )
    12  
    13  func TestUsersList(t *testing.T) {
    14  	t.Skip("DMS Creation takes too long to complete")
    15  	client, err := clients.NewDmsV2Client()
    16  	th.AssertNoErr(t, err)
    17  
    18  	instanceID := createDmsInstance(t, client)
    19  	defer deleteDmsInstance(t, client, instanceID)
    20  
    21  	dmsUsers, err := users.List(client, instanceID)
    22  	th.AssertNoErr(t, err)
    23  	for _, val := range dmsUsers {
    24  		tools.PrintResource(t, val)
    25  	}
    26  }
    27  
    28  func TestUsersLifecycle(t *testing.T) {
    29  	t.Skip("DMS Creation takes too long to complete")
    30  	client, err := clients.NewDmsV2Client()
    31  	th.AssertNoErr(t, err)
    32  	clientDmsV1, err := clients.NewDmsV11Client()
    33  	th.AssertNoErr(t, err)
    34  
    35  	instanceID := createDmsInstance(t, client)
    36  	defer deleteDmsInstance(t, client, instanceID)
    37  
    38  	dmsTopic := createTopic(t, client, instanceID)
    39  	defer deleteTopic(t, client, instanceID, dmsTopic)
    40  
    41  	userName := tools.RandomString("user", 5)
    42  
    43  	createOpts := users.CreateOpts{
    44  		UserName:   userName,
    45  		UserPasswd: "test12312!",
    46  	}
    47  	err = users.Create(client, instanceID, createOpts)
    48  	th.AssertNoErr(t, err)
    49  
    50  	err = users.ResetPassword(client, instanceID, userName, "tes!$%t12312")
    51  	th.AssertNoErr(t, err)
    52  
    53  	err = permissions.Create(clientDmsV1, instanceID, []permissions.CreateOpts{{
    54  		Name: dmsTopic,
    55  		Policies: []permissions.CreatePolicy{
    56  			{
    57  				UserName:     userName,
    58  				AccessPolicy: "all",
    59  			},
    60  		},
    61  	},
    62  	})
    63  
    64  	th.AssertNoErr(t, err)
    65  
    66  	userPermissions, err := permissions.List(clientDmsV1, instanceID, dmsTopic)
    67  	th.AssertNoErr(t, err)
    68  	tools.PrintResource(t, userPermissions)
    69  
    70  	err = users.Delete(client, instanceID, users.DeleteOpts{
    71  		Action: "delete",
    72  		Users: []string{
    73  			userName,
    74  		},
    75  	})
    76  	th.AssertNoErr(t, err)
    77  }