Introducing new FooResult idiom :shipit:
diff --git a/acceptance/openstack/networking/v2/extension_test.go b/acceptance/openstack/networking/v2/extension_test.go
index 99c0ecd..edcbba4 100644
--- a/acceptance/openstack/networking/v2/extension_test.go
+++ b/acceptance/openstack/networking/v2/extension_test.go
@@ -34,7 +34,7 @@
 	Setup(t)
 	defer Teardown()
 
-	ext, err := extensions.Get(Client, "service-type")
+	ext, err := extensions.Get(Client, "service-type").Extract()
 	th.AssertNoErr(t, err)
 
 	th.AssertEquals(t, ext.Updated, "2013-01-20T00:00:00-00:00")
diff --git a/acceptance/openstack/networking/v2/network_test.go b/acceptance/openstack/networking/v2/network_test.go
index 4e37fc0..9f18597 100644
--- a/acceptance/openstack/networking/v2/network_test.go
+++ b/acceptance/openstack/networking/v2/network_test.go
@@ -16,11 +16,11 @@
 	defer Teardown()
 
 	// Create a network
-	res, err := networks.Create(Client, networks.CreateOpts{Name: "sample_network", AdminStateUp: true})
+	n, err := networks.Create(Client, networks.CreateOpts{Name: "sample_network", AdminStateUp: true}).Extract()
 	th.AssertNoErr(t, err)
-	th.AssertEquals(t, res.Name, "sample_network")
-	th.AssertEquals(t, res.AdminStateUp, true)
-	networkID := res.ID
+	th.AssertEquals(t, n.Name, "sample_network")
+	th.AssertEquals(t, n.AdminStateUp, true)
+	networkID := n.ID
 
 	// List networks
 	pager := networks.List(Client, networks.ListOpts{Limit: 2})
@@ -43,7 +43,7 @@
 	if networkID == "" {
 		t.Fatalf("In order to retrieve a network, the NetworkID must be set")
 	}
-	n, err := networks.Get(Client, networkID)
+	n, err = networks.Get(Client, networkID).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, n.Status, "ACTIVE")
 	th.AssertDeepEquals(t, n.Subnets, []string{})
@@ -53,13 +53,13 @@
 	th.AssertEquals(t, n.ID, networkID)
 
 	// Update network
-	n, err = networks.Update(Client, networkID, networks.UpdateOpts{Name: "new_network_name"})
+	n, err = networks.Update(Client, networkID, networks.UpdateOpts{Name: "new_network_name"}).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, n.Name, "new_network_name")
 
 	// Delete network
-	err = networks.Delete(Client, networkID)
-	th.AssertNoErr(t, err)
+	res := networks.Delete(Client, networkID)
+	th.AssertNoErr(t, res.Err)
 }
 
 func TestCreateMultipleNetworks(t *testing.T) {
diff --git a/acceptance/openstack/networking/v2/port_test.go b/acceptance/openstack/networking/v2/port_test.go
index 3842913..363a7fe 100644
--- a/acceptance/openstack/networking/v2/port_test.go
+++ b/acceptance/openstack/networking/v2/port_test.go
@@ -40,18 +40,18 @@
 	if portID == "" {
 		t.Fatalf("In order to retrieve a port, the portID must be set")
 	}
-	p, err := ports.Get(Client, portID)
+	p, err := ports.Get(Client, portID).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, p.ID, portID)
 
 	// Update port
-	p, err = ports.Update(Client, portID, ports.UpdateOpts{Name: "new_port_name"})
+	p, err = ports.Update(Client, portID, ports.UpdateOpts{Name: "new_port_name"}).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, p.Name, "new_port_name")
 
 	// Delete port
-	err = ports.Delete(Client, portID)
-	th.AssertNoErr(t, err)
+	res := ports.Delete(Client, portID)
+	th.AssertNoErr(t, res.Err)
 }
 
 func createPort(t *testing.T, networkID, subnetID string) string {
@@ -62,7 +62,7 @@
 		AdminStateUp: &enable,
 		FixedIPs:     []ports.IP{ports.IP{SubnetID: subnetID}},
 	}
-	p, err := ports.Create(Client, opts)
+	p, err := ports.Create(Client, opts).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, p.NetworkID, networkID)
 	th.AssertEquals(t, p.Name, "my_port")
@@ -97,7 +97,7 @@
 }
 
 func createNetwork() (string, error) {
-	res, err := networks.Create(Client, networks.CreateOpts{Name: "tmp_network", AdminStateUp: true})
+	res, err := networks.Create(Client, networks.CreateOpts{Name: "tmp_network", AdminStateUp: true}).Extract()
 	return res.ID, err
 }
 
@@ -109,7 +109,7 @@
 		IPVersion:  subnets.IPv4,
 		Name:       "my_subnet",
 		EnableDHCP: &enable,
-	})
+	}).Extract()
 	return s.ID, err
 }
 
diff --git a/acceptance/openstack/networking/v2/subnet_test.go b/acceptance/openstack/networking/v2/subnet_test.go
index 6dcfcdc..2758e2a 100644
--- a/acceptance/openstack/networking/v2/subnet_test.go
+++ b/acceptance/openstack/networking/v2/subnet_test.go
@@ -38,9 +38,9 @@
 
 	// Setup network
 	t.Log("Setting up network")
-	res, err := networks.Create(Client, networks.CreateOpts{Name: "tmp_network", AdminStateUp: true})
+	n, err := networks.Create(Client, networks.CreateOpts{Name: "tmp_network", AdminStateUp: true}).Extract()
 	th.AssertNoErr(t, err)
-	networkID := res.ID
+	networkID := n.ID
 	defer networks.Delete(Client, networkID)
 
 	// Create subnet
@@ -53,7 +53,7 @@
 		Name:       "my_subnet",
 		EnableDHCP: &enable,
 	}
-	s, err := subnets.Create(Client, opts)
+	s, err := subnets.Create(Client, opts).Extract()
 	th.AssertNoErr(t, err)
 
 	th.AssertEquals(t, s.NetworkID, networkID)
@@ -65,20 +65,20 @@
 
 	// Get subnet
 	t.Log("Getting subnet")
-	s, err = subnets.Get(Client, subnetID)
+	s, err = subnets.Get(Client, subnetID).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, s.ID, subnetID)
 
 	// Update subnet
 	t.Log("Update subnet")
-	s, err = subnets.Update(Client, subnetID, subnets.UpdateOpts{Name: "new_subnet_name"})
+	s, err = subnets.Update(Client, subnetID, subnets.UpdateOpts{Name: "new_subnet_name"}).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, s.Name, "new_subnet_name")
 
 	// Delete subnet
 	t.Log("Delete subnet")
-	err = subnets.Delete(Client, subnetID)
-	th.AssertNoErr(t, err)
+	res := subnets.Delete(Client, subnetID)
+	th.AssertNoErr(t, res.Err)
 }
 
 func TestBatchCreate(t *testing.T) {