Skip to content
This repository was archived by the owner on Aug 1, 2023. It is now read-only.

Commit 5b23967

Browse files
author
Jamie Hannaford
committed
Merge pull request #277 from jrperritt/ExtractHeader-method
Extract header method
2 parents c13f2ce + 0bfb099 commit 5b23967

File tree

39 files changed

+113
-147
lines changed

39 files changed

+113
-147
lines changed

acceptance/openstack/blockstorage/v1/snapshots_test.go

Lines changed: 13 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -8,49 +8,38 @@ import (
88
"github.com/rackspace/gophercloud"
99
"github.com/rackspace/gophercloud/openstack/blockstorage/v1/snapshots"
1010
"github.com/rackspace/gophercloud/openstack/blockstorage/v1/volumes"
11+
th "github.com/rackspace/gophercloud/testhelper"
1112
)
1213

1314
func TestSnapshots(t *testing.T) {
1415

1516
client, err := newClient()
16-
if err != nil {
17-
t.Fatalf("Failed to create Block Storage v1 client: %v", err)
18-
}
19-
17+
th.AssertNoErr(t, err)
18+
2019
v, err := volumes.Create(client, &volumes.CreateOpts{
2120
Name: "gophercloud-test-volume",
2221
Size: 1,
2322
}).Extract()
24-
if err != nil {
25-
t.Fatalf("Failed to create volume: %v\n", err)
26-
}
23+
th.AssertNoErr(t, err)
2724

2825
err = volumes.WaitForStatus(client, v.ID, "available", 120)
29-
if err != nil {
30-
t.Fatalf("Failed to create volume: %v\n", err)
31-
}
26+
th.AssertNoErr(t, err)
3227

3328
t.Logf("Created volume: %v\n", v)
3429

3530
ss, err := snapshots.Create(client, &snapshots.CreateOpts{
3631
Name: "gophercloud-test-snapshot",
3732
VolumeID: v.ID,
3833
}).Extract()
39-
if err != nil {
40-
t.Fatalf("Failed to create snapshot: %v\n", err)
41-
}
34+
th.AssertNoErr(t, err)
4235

4336
err = snapshots.WaitForStatus(client, ss.ID, "available", 120)
44-
if err != nil {
45-
t.Fatalf("Failed to create snapshot: %v\n", err)
46-
}
37+
th.AssertNoErr(t, err)
4738

4839
t.Logf("Created snapshot: %+v\n", ss)
4940

50-
res = snapshots.Delete(client, ss.ID)
51-
if res.Err != nil {
52-
t.Fatalf("Failed to delete snapshot: %v", err)
53-
}
41+
err = snapshots.Delete(client, ss.ID).ExtractErr()
42+
th.AssertNoErr(t, err)
5443

5544
err = gophercloud.WaitFor(120, func() (bool, error) {
5645
_, err := snapshots.Get(client, ss.ID).Extract()
@@ -60,16 +49,12 @@ func TestSnapshots(t *testing.T) {
6049

6150
return false, nil
6251
})
63-
if err != nil {
64-
t.Fatalf("Failed to delete snapshot: %v", err)
65-
}
52+
th.AssertNoErr(t, err)
6653

6754
t.Log("Deleted snapshot\n")
6855

69-
res = volumes.Delete(client, v.ID)
70-
if res.Err != nil {
71-
t.Errorf("Failed to delete volume: %v", err)
72-
}
56+
err = volumes.Delete(client, v.ID).ExtractErr()
57+
th.AssertNoErr(t, err)
7358

7459
err = gophercloud.WaitFor(120, func() (bool, error) {
7560
_, err := volumes.Get(client, v.ID).Extract()
@@ -79,9 +64,7 @@ func TestSnapshots(t *testing.T) {
7964

8065
return false, nil
8166
})
82-
if err != nil {
83-
t.Errorf("Failed to delete volume: %v", err)
84-
}
67+
th.AssertNoErr(t, err)
8568

8669
t.Log("Deleted volume\n")
8770
}

acceptance/openstack/blockstorage/v1/volumes_test.go

Lines changed: 12 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,15 @@ import (
1010
"github.com/rackspace/gophercloud/openstack"
1111
"github.com/rackspace/gophercloud/openstack/blockstorage/v1/volumes"
1212
"github.com/rackspace/gophercloud/pagination"
13+
th "github.com/rackspace/gophercloud/testhelper"
1314
)
1415

1516
func newClient() (*gophercloud.ServiceClient, error) {
1617
ao, err := openstack.AuthOptionsFromEnv()
17-
if err != nil {
18-
return nil, err
19-
}
18+
th.AssertNoErr(t, err)
2019

2120
client, err := openstack.AuthenticatedClient(ao)
22-
if err != nil {
23-
return nil, err
24-
}
21+
th.AssertNoErr(t, err)
2522

2623
return openstack.NewBlockStorageV1(client, gophercloud.EndpointOpts{
2724
Region: os.Getenv("OS_REGION_NAME"),
@@ -30,43 +27,27 @@ func newClient() (*gophercloud.ServiceClient, error) {
3027

3128
func TestVolumes(t *testing.T) {
3229
client, err := newClient()
33-
if err != nil {
34-
t.Fatalf("Failed to create Block Storage v1 client: %v", err)
35-
}
30+
th.AssertNoErr(t, err)
3631

3732
cv, err := volumes.Create(client, &volumes.CreateOpts{
3833
Size: 1,
3934
Name: "gophercloud-test-volume",
4035
}).Extract()
41-
if err != nil {
42-
t.Error(err)
43-
return
44-
}
36+
th.AssertNoErr(t, err)
4537
defer func() {
4638
err = volumes.WaitForStatus(client, cv.ID, "available", 60)
47-
if err != nil {
48-
t.Error(err)
49-
}
50-
res = volumes.Delete(client, cv.ID)
51-
if res.Err != nil {
52-
t.Error(err)
53-
return
54-
}
39+
th.AssertNoErr(t, err)
40+
err = volumes.Delete(client, cv.ID).ExtractErr()
41+
th.AssertNoErr(t, err)
5542
}()
5643

5744
_, err = volumes.Update(client, cv.ID, &volumes.UpdateOpts{
5845
Name: "gophercloud-updated-volume",
5946
}).Extract()
60-
if err != nil {
61-
t.Error(err)
62-
return
63-
}
47+
th.AssertNoErr(t, err)
6448

6549
v, err := volumes.Get(client, cv.ID).Extract()
66-
if err != nil {
67-
t.Error(err)
68-
return
69-
}
50+
th.AssertNoErr(t, err)
7051
t.Logf("Got volume: %+v\n", v)
7152

7253
if v.Name != "gophercloud-updated-volume" {
@@ -75,12 +56,8 @@ func TestVolumes(t *testing.T) {
7556

7657
err = volumes.List(client, &volumes.ListOpts{Name: "gophercloud-updated-volume"}).EachPage(func(page pagination.Page) (bool, error) {
7758
vols, err := volumes.ExtractVolumes(page)
78-
if len(vols) != 1 {
79-
t.Errorf("Expected 1 volume, got %d", len(vols))
80-
}
59+
th.CheckEquals(t, 1, len(vols))
8160
return true, err
8261
})
83-
if err != nil {
84-
t.Errorf("Error listing volumes: %v", err)
85-
}
62+
th.AssertNoErr(t, err)
8663
}

acceptance/openstack/blockstorage/v1/volumetypes_test.go

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,12 @@ import (
88

99
"github.com/rackspace/gophercloud/openstack/blockstorage/v1/volumetypes"
1010
"github.com/rackspace/gophercloud/pagination"
11+
th "github.com/rackspace/gophercloud/testhelper"
1112
)
1213

1314
func TestVolumeTypes(t *testing.T) {
1415
client, err := newClient()
15-
if err != nil {
16-
t.Fatalf("Failed to create Block Storage v1 client: %v", err)
17-
}
16+
th.AssertNoErr(t, err)
1817

1918
vt, err := volumetypes.Create(client, &volumetypes.CreateOpts{
2019
ExtraSpecs: map[string]interface{}{
@@ -23,13 +22,10 @@ func TestVolumeTypes(t *testing.T) {
2322
},
2423
Name: "gophercloud-test-volumeType",
2524
}).Extract()
26-
if err != nil {
27-
t.Error(err)
28-
return
29-
}
25+
th.AssertNoErr(t, err)
3026
defer func() {
3127
time.Sleep(10000 * time.Millisecond)
32-
err = volumetypes.Delete(client, vt.ID)
28+
err = volumetypes.Delete(client, vt.ID).ExtractErr()
3329
if err != nil {
3430
t.Error(err)
3531
return
@@ -38,10 +34,7 @@ func TestVolumeTypes(t *testing.T) {
3834
t.Logf("Created volume type: %+v\n", vt)
3935

4036
vt, err = volumetypes.Get(client, vt.ID).Extract()
41-
if err != nil {
42-
t.Error(err)
43-
return
44-
}
37+
th.AssertNoErr(t, err)
4538
t.Logf("Got volume type: %+v\n", vt)
4639

4740
err = volumetypes.List(client).EachPage(func(page pagination.Page) (bool, error) {
@@ -52,7 +45,5 @@ func TestVolumeTypes(t *testing.T) {
5245
t.Logf("Listing volume types: %+v\n", volTypes)
5346
return true, err
5447
})
55-
if err != nil {
56-
t.Errorf("Error trying to list volume types: %v", err)
57-
}
48+
th.AssertNoErr(t, err)
5849
}

acceptance/openstack/objectstorage/v1/objects_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ func TestObjects(t *testing.T) {
3030

3131
// Create a container to hold the test objects.
3232
cName := tools.RandomString("test-container-", 8)
33-
createres := containers.Create(client, cName, nil)
34-
th.AssertNoErr(t, createres.Err)
33+
header, err := containers.Create(client, cName, nil).ExtractHeader()
34+
th.AssertNoErr(t, err)
35+
t.Logf("Create object headers: %+v\n", header)
3536

3637
// Defer deletion of the container until after testing.
3738
defer func() {
@@ -55,7 +56,7 @@ func TestObjects(t *testing.T) {
5556
}()
5657

5758
ons := make([]string, 0, len(oNames))
58-
err := objects.List(client, cName, &objects.ListOpts{Full: false, Prefix: "test-object-"}).EachPage(func(page pagination.Page) (bool, error) {
59+
err = objects.List(client, cName, &objects.ListOpts{Full: false, Prefix: "test-object-"}).EachPage(func(page pagination.Page) (bool, error) {
5960
names, err := objects.ExtractNames(page)
6061
th.AssertNoErr(t, err)
6162
ons = append(ons, names...)

acceptance/rackspace/compute/v2/keypairs_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import (
1414
)
1515

1616
func deleteKeyPair(t *testing.T, client *gophercloud.ServiceClient, name string) {
17-
err := keypairs.Delete(client, name).Extract()
17+
err := keypairs.Delete(client, name).ExtractErr()
1818
th.AssertNoErr(t, err)
1919
t.Logf("Successfully deleted key [%s].", name)
2020
}

acceptance/rackspace/compute/v2/servers_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ func deleteServer(t *testing.T, client *gophercloud.ServiceClient, server *os.Se
175175
func deleteServerKeyPair(t *testing.T, client *gophercloud.ServiceClient, k *oskey.KeyPair) {
176176
t.Logf("> keypairs.Delete")
177177

178-
err := keypairs.Delete(client, k.Name).Extract()
178+
err := keypairs.Delete(client, k.Name).ExtractErr()
179179
th.AssertNoErr(t, err)
180180

181181
t.Logf("Keypair deleted successfully.")

acceptance/rackspace/objectstorage/v1/cdnobjects_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ func TestCDNObjects(t *testing.T) {
2525
th.AssertNoErr(t, deleteResult.Err)
2626
}()
2727

28-
createObjResult := raxObjects.Create(raxClient, "gophercloud-test", "test-object", bytes.NewBufferString("gophercloud cdn test"), nil)
29-
th.AssertNoErr(t, createObjResult.Err)
30-
t.Logf("Headers from Create Object request: %+v\n", createObjResult.Header)
28+
header, err := raxObjects.Create(raxClient, "gophercloud-test", "test-object", bytes.NewBufferString("gophercloud cdn test"), nil).ExtractHeader()
29+
th.AssertNoErr(t, err)
30+
t.Logf("Headers from Create Object request: %+v\n", header)
3131
defer func() {
3232
deleteResult := raxObjects.Delete(raxClient, "gophercloud-test", "test-object", nil)
3333
th.AssertNoErr(t, deleteResult.Err)

openstack/blockstorage/v1/snapshots/results.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ type GetResult struct {
6161

6262
// DeleteResult contains the response body and error from a Delete request.
6363
type DeleteResult struct {
64-
gophercloud.ExtractErrResult
64+
gophercloud.ErrResult
6565
}
6666

6767
// ListResult is a pagination.Pager that is returned from a call to the List function.

openstack/blockstorage/v1/volumes/results.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ type GetResult struct {
6161

6262
// DeleteResult contains the response body and error from a Delete request.
6363
type DeleteResult struct {
64-
gophercloud.ExtractErrResult
64+
gophercloud.ErrResult
6565
}
6666

6767
// ListResult is a pagination.pager that is returned from a call to the List function.

openstack/blockstorage/v1/volumetypes/requests.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,13 @@ func Create(client *gophercloud.ServiceClient, opts CreateOptsBuilder) CreateRes
5555
}
5656

5757
// Delete will delete the volume type with the provided ID.
58-
func Delete(client *gophercloud.ServiceClient, id string) error {
59-
_, err := perigee.Request("DELETE", deleteURL(client, id), perigee.Options{
58+
func Delete(client *gophercloud.ServiceClient, id string) DeleteResult {
59+
var res DeleteResult
60+
_, res.Err = perigee.Request("DELETE", deleteURL(client, id), perigee.Options{
6061
MoreHeaders: client.AuthenticatedHeaders(),
6162
OkCodes: []int{202},
6263
})
63-
return err
64+
return res
6465
}
6566

6667
// Get will retrieve the volume type with the provided ID. To extract the volume

0 commit comments

Comments
 (0)