github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/keymanager/v1/containers/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/vnpaycloud-console/gophercloud/v2/openstack/keymanager/v1/containers" 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 TestListContainers(t *testing.T) { 14 th.SetupHTTP() 15 defer th.TeardownHTTP() 16 HandleListContainersSuccessfully(t) 17 18 count := 0 19 err := containers.List(client.ServiceClient(), nil).EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) { 20 count++ 21 22 actual, err := containers.ExtractContainers(page) 23 th.AssertNoErr(t, err) 24 25 th.AssertDeepEquals(t, ExpectedContainersSlice, actual) 26 27 return true, nil 28 }) 29 th.AssertNoErr(t, err) 30 th.AssertEquals(t, count, 1) 31 } 32 33 func TestListContainersAllPages(t *testing.T) { 34 th.SetupHTTP() 35 defer th.TeardownHTTP() 36 HandleListContainersSuccessfully(t) 37 38 allPages, err := containers.List(client.ServiceClient(), nil).AllPages(context.TODO()) 39 th.AssertNoErr(t, err) 40 actual, err := containers.ExtractContainers(allPages) 41 th.AssertNoErr(t, err) 42 th.AssertDeepEquals(t, ExpectedContainersSlice, actual) 43 } 44 45 func TestGetContainer(t *testing.T) { 46 th.SetupHTTP() 47 defer th.TeardownHTTP() 48 HandleGetContainerSuccessfully(t) 49 50 actual, err := containers.Get(context.TODO(), client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0").Extract() 51 th.AssertNoErr(t, err) 52 th.AssertDeepEquals(t, FirstContainer, *actual) 53 } 54 55 func TestCreateContainer(t *testing.T) { 56 th.SetupHTTP() 57 defer th.TeardownHTTP() 58 HandleCreateContainerSuccessfully(t) 59 60 createOpts := containers.CreateOpts{ 61 Type: containers.GenericContainer, 62 Name: "mycontainer", 63 SecretRefs: []containers.SecretRef{ 64 { 65 Name: "mysecret", 66 SecretRef: "http://barbican:9311/v1/secrets/1b8068c4-3bb6-4be6-8f1e-da0d1ea0b67c", 67 }, 68 }, 69 } 70 71 actual, err := containers.Create(context.TODO(), client.ServiceClient(), createOpts).Extract() 72 th.AssertNoErr(t, err) 73 th.AssertDeepEquals(t, FirstContainer, *actual) 74 } 75 76 func TestDeleteContainer(t *testing.T) { 77 th.SetupHTTP() 78 defer th.TeardownHTTP() 79 HandleDeleteContainerSuccessfully(t) 80 81 res := containers.Delete(context.TODO(), client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0") 82 th.AssertNoErr(t, res.Err) 83 } 84 85 func TestListConsumers(t *testing.T) { 86 th.SetupHTTP() 87 defer th.TeardownHTTP() 88 HandleListConsumersSuccessfully(t) 89 90 count := 0 91 err := containers.ListConsumers(client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0", nil).EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) { 92 count++ 93 94 actual, err := containers.ExtractConsumers(page) 95 th.AssertNoErr(t, err) 96 97 th.AssertDeepEquals(t, ExpectedConsumersSlice, actual) 98 99 return true, nil 100 }) 101 th.AssertNoErr(t, err) 102 th.AssertEquals(t, count, 1) 103 } 104 105 func TestListConsumersAllPages(t *testing.T) { 106 th.SetupHTTP() 107 defer th.TeardownHTTP() 108 HandleListConsumersSuccessfully(t) 109 110 allPages, err := containers.ListConsumers(client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0", nil).AllPages(context.TODO()) 111 th.AssertNoErr(t, err) 112 actual, err := containers.ExtractConsumers(allPages) 113 th.AssertNoErr(t, err) 114 th.AssertDeepEquals(t, ExpectedConsumersSlice, actual) 115 } 116 117 func TestCreateConsumer(t *testing.T) { 118 th.SetupHTTP() 119 defer th.TeardownHTTP() 120 HandleCreateConsumerSuccessfully(t) 121 122 createOpts := containers.CreateConsumerOpts{ 123 Name: "CONSUMER-LZILN1zq", 124 URL: "http://example.com", 125 } 126 127 actual, err := containers.CreateConsumer(context.TODO(), client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0", createOpts).Extract() 128 th.AssertNoErr(t, err) 129 th.AssertDeepEquals(t, ExpectedCreatedConsumer, *actual) 130 } 131 132 func TestDeleteConsumer(t *testing.T) { 133 th.SetupHTTP() 134 defer th.TeardownHTTP() 135 HandleDeleteConsumerSuccessfully(t) 136 137 deleteOpts := containers.DeleteConsumerOpts{ 138 Name: "CONSUMER-LZILN1zq", 139 URL: "http://example.com", 140 } 141 142 actual, err := containers.DeleteConsumer(context.TODO(), client.ServiceClient(), "dfdb88f3-4ddb-4525-9da6-066453caa9b0", deleteOpts).Extract() 143 th.AssertNoErr(t, err) 144 th.AssertDeepEquals(t, FirstContainer, *actual) 145 }