github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/internal/acceptance/openstack/placement/v1/resourceproviders_test.go (about) 1 //go:build acceptance || placement || resourceproviders 2 3 package v1 4 5 import ( 6 "context" 7 "testing" 8 9 "github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/clients" 10 "github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/tools" 11 "github.com/vnpaycloud-console/gophercloud/v2/openstack/placement/v1/resourceproviders" 12 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 13 ) 14 15 func TestResourceProviderList(t *testing.T) { 16 clients.RequireAdmin(t) 17 18 client, err := clients.NewPlacementV1Client() 19 th.AssertNoErr(t, err) 20 21 allPages, err := resourceproviders.List(client, resourceproviders.ListOpts{}).AllPages(context.TODO()) 22 th.AssertNoErr(t, err) 23 24 allResourceProviders, err := resourceproviders.ExtractResourceProviders(allPages) 25 th.AssertNoErr(t, err) 26 27 for _, v := range allResourceProviders { 28 tools.PrintResource(t, v) 29 } 30 } 31 32 func TestResourceProvider(t *testing.T) { 33 clients.SkipRelease(t, "stable/mitaka") 34 clients.SkipRelease(t, "stable/newton") 35 clients.SkipRelease(t, "stable/ocata") 36 clients.SkipRelease(t, "stable/pike") 37 clients.SkipRelease(t, "stable/queens") 38 clients.RequireAdmin(t) 39 40 client, err := clients.NewPlacementV1Client() 41 th.AssertNoErr(t, err) 42 43 resourceProvider, err := CreateResourceProvider(t, client) 44 th.AssertNoErr(t, err) 45 defer DeleteResourceProvider(t, client, resourceProvider.UUID) 46 47 resourceProvider2, err := CreateResourceProviderWithParent(t, client, resourceProvider.UUID) 48 th.AssertNoErr(t, err) 49 defer DeleteResourceProvider(t, client, resourceProvider2.UUID) 50 51 newName := tools.RandomString("TESTACC-", 8) 52 updateOpts := resourceproviders.UpdateOpts{ 53 Name: &newName, 54 } 55 resourceProviderUpdate, err := resourceproviders.Update(context.TODO(), client, resourceProvider2.UUID, updateOpts).Extract() 56 th.AssertNoErr(t, err) 57 th.AssertEquals(t, newName, resourceProviderUpdate.Name) 58 59 resourceProviderGet, err := resourceproviders.Get(context.TODO(), client, resourceProvider2.UUID).Extract() 60 th.AssertNoErr(t, err) 61 th.AssertEquals(t, newName, resourceProviderGet.Name) 62 63 } 64 65 func TestResourceProviderUsages(t *testing.T) { 66 clients.RequireAdmin(t) 67 68 clients.RequireAdmin(t) 69 70 client, err := clients.NewPlacementV1Client() 71 th.AssertNoErr(t, err) 72 73 // first create new resource provider 74 resourceProvider, err := CreateResourceProvider(t, client) 75 th.AssertNoErr(t, err) 76 defer DeleteResourceProvider(t, client, resourceProvider.UUID) 77 78 // now get the usages for the newly created resource provider 79 usage, err := resourceproviders.GetUsages(context.TODO(), client, resourceProvider.UUID).Extract() 80 th.AssertNoErr(t, err) 81 82 tools.PrintResource(t, usage) 83 } 84 85 func TestResourceProviderInventories(t *testing.T) { 86 clients.RequireAdmin(t) 87 88 client, err := clients.NewPlacementV1Client() 89 th.AssertNoErr(t, err) 90 91 // first create new resource provider 92 resourceProvider, err := CreateResourceProvider(t, client) 93 th.AssertNoErr(t, err) 94 defer DeleteResourceProvider(t, client, resourceProvider.UUID) 95 96 // now get the inventories for the newly created resource provider 97 usage, err := resourceproviders.GetInventories(context.TODO(), client, resourceProvider.UUID).Extract() 98 th.AssertNoErr(t, err) 99 100 tools.PrintResource(t, usage) 101 } 102 103 func TestResourceProviderTraits(t *testing.T) { 104 clients.RequireAdmin(t) 105 106 client, err := clients.NewPlacementV1Client() 107 th.AssertNoErr(t, err) 108 109 // first create new resource provider 110 resourceProvider, err := CreateResourceProvider(t, client) 111 th.AssertNoErr(t, err) 112 defer DeleteResourceProvider(t, client, resourceProvider.UUID) 113 114 // now get the traits for the newly created resource provider 115 usage, err := resourceproviders.GetTraits(context.TODO(), client, resourceProvider.UUID).Extract() 116 th.AssertNoErr(t, err) 117 118 tools.PrintResource(t, usage) 119 } 120 121 func TestResourceProviderAllocations(t *testing.T) { 122 clients.RequireAdmin(t) 123 124 client, err := clients.NewPlacementV1Client() 125 th.AssertNoErr(t, err) 126 127 // first create new resource provider 128 resourceProvider, err := CreateResourceProvider(t, client) 129 th.AssertNoErr(t, err) 130 defer DeleteResourceProvider(t, client, resourceProvider.UUID) 131 132 // now get the allocations for the newly created resource provider 133 usage, err := resourceproviders.GetAllocations(context.TODO(), client, resourceProvider.UUID).Extract() 134 th.AssertNoErr(t, err) 135 136 tools.PrintResource(t, usage) 137 }