github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/messaging/v2/claims_test.go (about) 1 //go:build acceptance || messaging || claims 2 // +build acceptance messaging claims 3 4 package v2 5 6 import ( 7 "testing" 8 9 "github.com/gophercloud/gophercloud/internal/acceptance/clients" 10 "github.com/gophercloud/gophercloud/internal/acceptance/tools" 11 "github.com/gophercloud/gophercloud/openstack/messaging/v2/claims" 12 ) 13 14 func TestCRUDClaim(t *testing.T) { 15 clientID := "3381af92-2b9e-11e3-b191-71861300734c" 16 17 client, err := clients.NewMessagingV2Client(clientID) 18 if err != nil { 19 t.Fatalf("Unable to create a messaging service client: %v", err) 20 } 21 22 createdQueueName, err := CreateQueue(t, client) 23 defer DeleteQueue(t, client, createdQueueName) 24 25 clientID = "3381af92-2b9e-11e3-b191-71861300734d" 26 27 client, err = clients.NewMessagingV2Client(clientID) 28 if err != nil { 29 t.Fatalf("Unable to create a messaging service client: %v", err) 30 } 31 for i := 0; i < 3; i++ { 32 CreateMessage(t, client, createdQueueName) 33 } 34 35 clientID = "3381af92-2b9e-11e3-b191-7186130073dd" 36 claimedMessages, err := CreateClaim(t, client, createdQueueName) 37 claimIDs, _ := ExtractIDs(claimedMessages) 38 39 tools.PrintResource(t, claimedMessages) 40 41 updateOpts := claims.UpdateOpts{ 42 TTL: 600, 43 Grace: 500, 44 } 45 46 for _, claimID := range claimIDs { 47 t.Logf("Attempting to update claim: %s", claimID) 48 updateErr := claims.Update(client, createdQueueName, claimID, updateOpts).ExtractErr() 49 50 if updateErr != nil { 51 t.Fatalf("Unable to update claim %s: %v", claimID, err) 52 } else { 53 t.Logf("Successfully updated claim: %s", claimID) 54 } 55 56 updatedClaim, getErr := GetClaim(t, client, createdQueueName, claimID) 57 if getErr != nil { 58 t.Fatalf("Unable to retrieve claim %s: %v", claimID, getErr) 59 } 60 61 tools.PrintResource(t, updatedClaim) 62 DeleteClaim(t, client, createdQueueName, claimID) 63 } 64 }