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