move unit tests into 'testing' directories
diff --git a/openstack/db/v1/configurations/testing/doc.go b/openstack/db/v1/configurations/testing/doc.go
new file mode 100644
index 0000000..7603f83
--- /dev/null
+++ b/openstack/db/v1/configurations/testing/doc.go
@@ -0,0 +1 @@
+package testing
diff --git a/openstack/db/v1/configurations/fixtures.go b/openstack/db/v1/configurations/testing/fixtures.go
similarity index 94%
rename from openstack/db/v1/configurations/fixtures.go
rename to openstack/db/v1/configurations/testing/fixtures.go
index 9064c6c..56e10f4 100644
--- a/openstack/db/v1/configurations/fixtures.go
+++ b/openstack/db/v1/configurations/testing/fixtures.go
@@ -1,10 +1,10 @@
-// +build fixtures
-
-package configurations
+package testing
 
 import (
 	"fmt"
 	"time"
+
+	"github.com/gophercloud/gophercloud/openstack/db/v1/configurations"
 )
 
 var (
@@ -132,7 +132,7 @@
 }
 `
 
-var ExampleConfig = Config{
+var ExampleConfig = configurations.Config{
 	Created:              timeVal,
 	DatastoreName:        "mysql",
 	DatastoreVersionID:   "b00000b0-00b0-0b00-00b0-000b000000bb",
@@ -143,7 +143,7 @@
 	Updated:              timeVal,
 }
 
-var ExampleConfigWithValues = Config{
+var ExampleConfigWithValues = configurations.Config{
 	Created:              timeVal,
 	DatastoreName:        "mysql",
 	DatastoreVersionID:   "b00000b0-00b0-0b00-00b0-000b000000bb",
diff --git a/openstack/db/v1/configurations/requests_test.go b/openstack/db/v1/configurations/testing/requests_test.go
similarity index 65%
rename from openstack/db/v1/configurations/requests_test.go
rename to openstack/db/v1/configurations/testing/requests_test.go
index 575cf4f..643f363 100644
--- a/openstack/db/v1/configurations/requests_test.go
+++ b/openstack/db/v1/configurations/testing/requests_test.go
@@ -1,8 +1,9 @@
-package configurations
+package testing
 
 import (
 	"testing"
 
+	"github.com/gophercloud/gophercloud/openstack/db/v1/configurations"
 	"github.com/gophercloud/gophercloud/openstack/db/v1/instances"
 	"github.com/gophercloud/gophercloud/pagination"
 	th "github.com/gophercloud/gophercloud/testhelper"
@@ -30,12 +31,12 @@
 	fixture.SetupHandler(t, _baseURL, "GET", "", ListConfigsJSON, 200)
 
 	count := 0
-	err := List(fake.ServiceClient()).EachPage(func(page pagination.Page) (bool, error) {
+	err := configurations.List(fake.ServiceClient()).EachPage(func(page pagination.Page) (bool, error) {
 		count++
-		actual, err := ExtractConfigs(page)
+		actual, err := configurations.ExtractConfigs(page)
 		th.AssertNoErr(t, err)
 
-		expected := []Config{ExampleConfig}
+		expected := []configurations.Config{ExampleConfig}
 		th.AssertDeepEquals(t, expected, actual)
 
 		return true, nil
@@ -50,7 +51,7 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, resURL, "GET", "", GetConfigJSON, 200)
 
-	config, err := Get(fake.ServiceClient(), configID).Extract()
+	config, err := configurations.Get(fake.ServiceClient(), configID).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertDeepEquals(t, &ExampleConfig, config)
 }
@@ -60,8 +61,8 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, _baseURL, "POST", CreateReq, CreateConfigJSON, 200)
 
-	opts := CreateOpts{
-		Datastore: &DatastoreOpts{
+	opts := configurations.CreateOpts{
+		Datastore: &configurations.DatastoreOpts{
 			Type:    "a00000a0-00a0-0a00-00a0-000a000000aa",
 			Version: "b00000b0-00b0-0b00-00b0-000b000000bb",
 		},
@@ -73,7 +74,7 @@
 		},
 	}
 
-	config, err := Create(fake.ServiceClient(), opts).Extract()
+	config, err := configurations.Create(fake.ServiceClient(), opts).Extract()
 	th.AssertNoErr(t, err)
 	th.AssertDeepEquals(t, &ExampleConfigWithValues, config)
 }
@@ -83,13 +84,13 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, resURL, "PATCH", UpdateReq, "", 200)
 
-	opts := UpdateOpts{
+	opts := configurations.UpdateOpts{
 		Values: map[string]interface{}{
 			"connect_timeout": 300,
 		},
 	}
 
-	err := Update(fake.ServiceClient(), configID, opts).ExtractErr()
+	err := configurations.Update(fake.ServiceClient(), configID, opts).ExtractErr()
 	th.AssertNoErr(t, err)
 }
 
@@ -98,13 +99,13 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, resURL, "PUT", UpdateReq, "", 202)
 
-	opts := UpdateOpts{
+	opts := configurations.UpdateOpts{
 		Values: map[string]interface{}{
 			"connect_timeout": 300,
 		},
 	}
 
-	err := Replace(fake.ServiceClient(), configID, opts).ExtractErr()
+	err := configurations.Replace(fake.ServiceClient(), configID, opts).ExtractErr()
 	th.AssertNoErr(t, err)
 }
 
@@ -113,7 +114,7 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, resURL, "DELETE", "", "", 202)
 
-	err := Delete(fake.ServiceClient(), configID).ExtractErr()
+	err := configurations.Delete(fake.ServiceClient(), configID).ExtractErr()
 	th.AssertNoErr(t, err)
 }
 
@@ -128,7 +129,7 @@
 	}
 
 	pages := 0
-	err := ListInstances(fake.ServiceClient(), configID).EachPage(func(page pagination.Page) (bool, error) {
+	err := configurations.ListInstances(fake.ServiceClient(), configID).EachPage(func(page pagination.Page) (bool, error) {
 		pages++
 
 		actual, err := instances.ExtractInstances(page)
@@ -151,19 +152,19 @@
 	fixture.SetupHandler(t, dsParamListURL, "GET", "", ListParamsJSON, 200)
 
 	pages := 0
-	err := ListDatastoreParams(fake.ServiceClient(), dsID, versionID).EachPage(func(page pagination.Page) (bool, error) {
+	err := configurations.ListDatastoreParams(fake.ServiceClient(), dsID, versionID).EachPage(func(page pagination.Page) (bool, error) {
 		pages++
 
-		actual, err := ExtractParams(page)
+		actual, err := configurations.ExtractParams(page)
 		if err != nil {
 			return false, err
 		}
 
-		expected := []Param{
-			Param{Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer"},
-			Param{Max: 4294967296, Min: 0, Name: "key_buffer_size", RestartRequired: false, Type: "integer"},
-			Param{Max: 65535, Min: 2, Name: "connect_timeout", RestartRequired: false, Type: "integer"},
-			Param{Max: 4294967296, Min: 0, Name: "join_buffer_size", RestartRequired: false, Type: "integer"},
+		expected := []configurations.Param{
+			{Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer"},
+			{Max: 4294967296, Min: 0, Name: "key_buffer_size", RestartRequired: false, Type: "integer"},
+			{Max: 65535, Min: 2, Name: "connect_timeout", RestartRequired: false, Type: "integer"},
+			{Max: 4294967296, Min: 0, Name: "join_buffer_size", RestartRequired: false, Type: "integer"},
 		}
 
 		th.AssertDeepEquals(t, actual, expected)
@@ -180,10 +181,10 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, dsParamGetURL, "GET", "", GetParamJSON, 200)
 
-	param, err := GetDatastoreParam(fake.ServiceClient(), dsID, versionID, paramID).Extract()
+	param, err := configurations.GetDatastoreParam(fake.ServiceClient(), dsID, versionID, paramID).Extract()
 	th.AssertNoErr(t, err)
 
-	expected := &Param{
+	expected := &configurations.Param{
 		Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer",
 	}
 
@@ -196,19 +197,19 @@
 	fixture.SetupHandler(t, globalParamListURL, "GET", "", ListParamsJSON, 200)
 
 	pages := 0
-	err := ListGlobalParams(fake.ServiceClient(), versionID).EachPage(func(page pagination.Page) (bool, error) {
+	err := configurations.ListGlobalParams(fake.ServiceClient(), versionID).EachPage(func(page pagination.Page) (bool, error) {
 		pages++
 
-		actual, err := ExtractParams(page)
+		actual, err := configurations.ExtractParams(page)
 		if err != nil {
 			return false, err
 		}
 
-		expected := []Param{
-			Param{Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer"},
-			Param{Max: 4294967296, Min: 0, Name: "key_buffer_size", RestartRequired: false, Type: "integer"},
-			Param{Max: 65535, Min: 2, Name: "connect_timeout", RestartRequired: false, Type: "integer"},
-			Param{Max: 4294967296, Min: 0, Name: "join_buffer_size", RestartRequired: false, Type: "integer"},
+		expected := []configurations.Param{
+			{Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer"},
+			{Max: 4294967296, Min: 0, Name: "key_buffer_size", RestartRequired: false, Type: "integer"},
+			{Max: 65535, Min: 2, Name: "connect_timeout", RestartRequired: false, Type: "integer"},
+			{Max: 4294967296, Min: 0, Name: "join_buffer_size", RestartRequired: false, Type: "integer"},
 		}
 
 		th.AssertDeepEquals(t, actual, expected)
@@ -225,10 +226,10 @@
 	defer th.TeardownHTTP()
 	fixture.SetupHandler(t, globalParamGetURL, "GET", "", GetParamJSON, 200)
 
-	param, err := GetGlobalParam(fake.ServiceClient(), versionID, paramID).Extract()
+	param, err := configurations.GetGlobalParam(fake.ServiceClient(), versionID, paramID).Extract()
 	th.AssertNoErr(t, err)
 
-	expected := &Param{
+	expected := &configurations.Param{
 		Max: 1, Min: 0, Name: "innodb_file_per_table", RestartRequired: true, Type: "integer",
 	}