package softlayer

import (
	"testing"

	"github.com/hashicorp/terraform/helper/schema"
	"github.com/hashicorp/terraform/terraform"
)

var testAccProviders map[string]terraform.ResourceProvider
var testAccProvider *schema.Provider

func init() {
	testAccProvider = Provider().(*schema.Provider)
	testAccProviders = map[string]terraform.ResourceProvider{
		"softlayer": testAccProvider,
	}
}

func TestProvider(t *testing.T) {
	if err := Provider().(*schema.Provider).InternalValidate(); err != nil {
		t.Fatalf("err: %s", err)
	}
}

func TestProvider_impl(t *testing.T) {
	var _ terraform.ResourceProvider = Provider()
}

func testAccPreCheck(t *testing.T) {
	for _, param := range []string{"username", "api_key", "endpoint_url"} {
		value, _ := testAccProvider.Schema[param].DefaultFunc()
		if value == "" {
			t.Fatalf("A SoftLayer %s was not found. Read gopherlayer docs for how to configure this.", param)
		}
	}
}

package softlayer

import (
	"os"
	"testing"

	"github.com/hashicorp/terraform/helper/schema"
	"github.com/hashicorp/terraform/terraform"
)

var testAccProviders map[string]terraform.ResourceProvider
var testAccProvider *schema.Provider

func init() {
	testAccProvider = Provider().(*schema.Provider)
	testAccProviders = map[string]terraform.ResourceProvider{
		"softlayer": testAccProvider,
	}
}

func TestProvider(t *testing.T) {
	if err := Provider().(*schema.Provider).InternalValidate(); err != nil {
		t.Fatalf("err: %s", err)
	}
}

func TestProvider_impl(t *testing.T) {
	var _ terraform.ResourceProvider = Provider()
}

func testAccPreCheck(t *testing.T) {
	if v := os.Getenv("SOFTLAYER_USERNAME"); v == "" {
		t.Fatal("SOFTLAYER_USERNAME must be set for acceptance tests")
	}
	if v := os.Getenv("SOFTLAYER_API_KEY"); v == "" {
		t.Fatal("SOFTLAYER_API_KEY must be set for acceptance tests")
	}
}

--- 
+++ 
@@ -1,7 +1,6 @@
 package softlayer
 
 import (
-	"os"
 	"testing"
 
 	"github.com/hashicorp/terraform/helper/schema"
@@ -29,10 +28,10 @@
 }
 
 func testAccPreCheck(t *testing.T) {
-	if v := os.Getenv("SOFTLAYER_USERNAME"); v == "" {
-		t.Fatal("SOFTLAYER_USERNAME must be set for acceptance tests")
-	}
-	if v := os.Getenv("SOFTLAYER_API_KEY"); v == "" {
-		t.Fatal("SOFTLAYER_API_KEY must be set for acceptance tests")
+	for _, param := range []string{"username", "api_key", "endpoint_url"} {
+		value, _ := testAccProvider.Schema[param].DefaultFunc()
+		if value == "" {
+			t.Fatalf("A SoftLayer %s was not found. Read gopherlayer docs for how to configure this.", param)
+		}
 	}
 }
Update provider test to ensure default credentials were found.
