diff --git a/examples/datastore/datastore_test.go b/examples/datastore/datastore_test.go index af168b8a99..cec88724cd 100644 --- a/examples/datastore/datastore_test.go +++ b/examples/datastore/datastore_test.go @@ -3,6 +3,9 @@ package datastore import ( "cloud.google.com/go/datastore" "context" + "google.golang.org/api/option" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" "testing" ) @@ -25,8 +28,12 @@ func TestDatastore(t *testing.T) { } }) - t.Setenv("DATASTORE_EMULATOR_HOST", container.URI) - dsClient, err := datastore.NewClient(ctx, "test-project") + options := []option.ClientOption{ + option.WithEndpoint(container.URI), + option.WithoutAuthentication(), + option.WithGRPCDialOption(grpc.WithTransportCredentials(insecure.NewCredentials())), + } + dsClient, err := datastore.NewClient(ctx, "test-project", options...) if err != nil { t.Fatal(err) } diff --git a/examples/firestore/firestore_test.go b/examples/firestore/firestore_test.go index f476d9aa13..2912b04faf 100644 --- a/examples/firestore/firestore_test.go +++ b/examples/firestore/firestore_test.go @@ -3,6 +3,9 @@ package firestore import ( "cloud.google.com/go/firestore" "context" + "google.golang.org/api/option" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" "testing" ) @@ -11,6 +14,16 @@ type Person struct { Lastname string `json:"lastname"` } +type emulatorCreds struct { +} + +func (ec emulatorCreds) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) { + return map[string]string{"authorization": "Bearer owner"}, nil +} +func (ec emulatorCreds) RequireTransportSecurity() bool { + return false +} + func TestFirestore(t *testing.T) { ctx := context.Background() @@ -26,8 +39,12 @@ func TestFirestore(t *testing.T) { } }) - t.Setenv("FIRESTORE_EMULATOR_HOST", container.URI) - client, err := firestore.NewClient(ctx, "test-project") + conn, err := grpc.Dial(container.URI, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithPerRPCCredentials(emulatorCreds{})) + if err != nil { + t.Fatal(err) + } + options := []option.ClientOption{option.WithGRPCConn(conn)} + client, err := firestore.NewClient(ctx, "test-project", options...) if err != nil { t.Fatal(err) } diff --git a/examples/pubsub/pubsub_test.go b/examples/pubsub/pubsub_test.go index 172396bc40..14d06654ac 100644 --- a/examples/pubsub/pubsub_test.go +++ b/examples/pubsub/pubsub_test.go @@ -3,6 +3,9 @@ package pubsub import ( "cloud.google.com/go/pubsub" "context" + "google.golang.org/api/option" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" "testing" ) @@ -21,8 +24,12 @@ func TestPubsub(t *testing.T) { } }) - t.Setenv("PUBSUB_EMULATOR_HOST", container.URI) - client, err := pubsub.NewClient(ctx, "my-project-id") + conn, err := grpc.Dial(container.URI, grpc.WithTransportCredentials(insecure.NewCredentials())) + if err != nil { + t.Fatal(err) + } + options := []option.ClientOption{option.WithGRPCConn(conn)} + client, err := pubsub.NewClient(ctx, "my-project-id", options...) if err != nil { t.Fatal(err) } diff --git a/examples/spanner/spanner_test.go b/examples/spanner/spanner_test.go index 2502845609..22a84c337e 100644 --- a/examples/spanner/spanner_test.go +++ b/examples/spanner/spanner_test.go @@ -6,8 +6,12 @@ import ( instance "cloud.google.com/go/spanner/admin/instance/apiv1" "context" "fmt" + "google.golang.org/api/option" + "google.golang.org/api/option/internaloption" databasepb "google.golang.org/genproto/googleapis/spanner/admin/database/v1" instancepb "google.golang.org/genproto/googleapis/spanner/admin/instance/v1" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" "testing" ) @@ -32,9 +36,14 @@ func TestSpanner(t *testing.T) { } }) - t.Setenv("SPANNER_EMULATOR_HOST", container.GRPCEndpoint) + options := []option.ClientOption{ + option.WithEndpoint(container.GRPCEndpoint), + option.WithGRPCDialOption(grpc.WithTransportCredentials(insecure.NewCredentials())), + option.WithoutAuthentication(), + internaloption.SkipDialSettingsValidation(), + } - instanceAdmin, err := instance.NewInstanceAdminClient(ctx) + instanceAdmin, err := instance.NewInstanceAdminClient(ctx, options...) if err != nil { t.Fatal(err) } @@ -55,7 +64,7 @@ func TestSpanner(t *testing.T) { t.Fatal(err) } - c, err := database.NewDatabaseAdminClient(ctx) + c, err := database.NewDatabaseAdminClient(ctx, options...) if err != nil { t.Fatal(err) } @@ -76,7 +85,8 @@ func TestSpanner(t *testing.T) { t.Fatal(err) } - client, err := spanner.NewClient(ctx, fmt.Sprintf("projects/%s/instances/%s/databases/%s", projectId, instanceId, databaseName)) + db := fmt.Sprintf("projects/%s/instances/%s/databases/%s", projectId, instanceId, databaseName) + client, err := spanner.NewClient(ctx, db, options...) if err != nil { t.Fatal(err) }