BREAKING: all: regenerate toolkit client
BREAK: logging: LoggingProjectPath and LoggingLogPath functions are
renamed ProjectPath and LogPath, respectively.
BREAK: videointelligence: The type VideoIntelligenceClient is renamed
Client.
logging: idempotent RPCs can be retried on INTERNAL error. Fixes #517.
all: fix iterator examples. Fixes #657.
Change-Id: I1c69f5e2ae681fb4a5d914cdc5e0d67d8b83c02e
Reviewed-on: https://code-review.googlesource.com/13951
Reviewed-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
diff --git a/debugger/apiv2/controller2_client.go b/debugger/apiv2/controller2_client.go
index 24e7a14..041f99f 100644
--- a/debugger/apiv2/controller2_client.go
+++ b/debugger/apiv2/controller2_client.go
@@ -57,17 +57,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &Controller2CallOptions{
RegisterDebuggee: retry[[2]string{"default", "non_idempotent"}],
diff --git a/debugger/apiv2/debugger2_client.go b/debugger/apiv2/debugger2_client.go
index b5c39a2..b50aa2a 100644
--- a/debugger/apiv2/debugger2_client.go
+++ b/debugger/apiv2/debugger2_client.go
@@ -59,17 +59,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &Debugger2CallOptions{
SetBreakpoint: retry[[2]string{"default", "non_idempotent"}],
diff --git a/debugger/apiv2/doc.go b/debugger/apiv2/doc.go
index 03b288f..f0b10ca 100644
--- a/debugger/apiv2/doc.go
+++ b/debugger/apiv2/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package debugger is an experimental, auto-generated package for the
-// debugger API.
+// Stackdriver Debugger API.
//
// Examines the call stack and variables of a running application
// without stopping or slowing it down.
@@ -35,6 +35,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/debugger/apiv2/mock_test.go b/debugger/apiv2/mock_test.go
index ed29d4a..8295dfc 100644
--- a/debugger/apiv2/mock_test.go
+++ b/debugger/apiv2/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -241,7 +242,7 @@
func TestDebugger2SetBreakpointError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDebugger2.err = grpc.Errorf(errCode, "test error")
+ mockDebugger2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var breakpoint *clouddebuggerpb.Breakpoint = &clouddebuggerpb.Breakpoint{}
@@ -259,7 +260,9 @@
resp, err := c.SetBreakpoint(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -303,7 +306,7 @@
func TestDebugger2GetBreakpointError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDebugger2.err = grpc.Errorf(errCode, "test error")
+ mockDebugger2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var breakpointId string = "breakpointId498424873"
@@ -321,7 +324,9 @@
resp, err := c.GetBreakpoint(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -362,7 +367,7 @@
func TestDebugger2DeleteBreakpointError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDebugger2.err = grpc.Errorf(errCode, "test error")
+ mockDebugger2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var breakpointId string = "breakpointId498424873"
@@ -380,7 +385,9 @@
err = c.DeleteBreakpoint(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -424,7 +431,7 @@
func TestDebugger2ListBreakpointsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDebugger2.err = grpc.Errorf(errCode, "test error")
+ mockDebugger2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var clientVersion string = "clientVersion-1506231196"
@@ -440,7 +447,9 @@
resp, err := c.ListBreakpoints(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -482,7 +491,7 @@
func TestDebugger2ListDebuggeesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDebugger2.err = grpc.Errorf(errCode, "test error")
+ mockDebugger2.err = gstatus.Error(errCode, "test error")
var project string = "project-309310695"
var clientVersion string = "clientVersion-1506231196"
@@ -498,7 +507,9 @@
resp, err := c.ListDebuggees(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -538,7 +549,7 @@
func TestController2RegisterDebuggeeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockController2.err = grpc.Errorf(errCode, "test error")
+ mockController2.err = gstatus.Error(errCode, "test error")
var debuggee *clouddebuggerpb.Debuggee = &clouddebuggerpb.Debuggee{}
var request = &clouddebuggerpb.RegisterDebuggeeRequest{
@@ -552,7 +563,9 @@
resp, err := c.RegisterDebuggee(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -597,7 +610,7 @@
func TestController2ListActiveBreakpointsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockController2.err = grpc.Errorf(errCode, "test error")
+ mockController2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var request = &clouddebuggerpb.ListActiveBreakpointsRequest{
@@ -611,7 +624,9 @@
resp, err := c.ListActiveBreakpoints(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -653,7 +668,7 @@
func TestController2UpdateActiveBreakpointError(t *testing.T) {
errCode := codes.PermissionDenied
- mockController2.err = grpc.Errorf(errCode, "test error")
+ mockController2.err = gstatus.Error(errCode, "test error")
var debuggeeId string = "debuggeeId-997255898"
var breakpoint *clouddebuggerpb.Breakpoint = &clouddebuggerpb.Breakpoint{}
@@ -669,7 +684,9 @@
resp, err := c.UpdateActiveBreakpoint(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/errorreporting/apiv1beta1/doc.go b/errorreporting/apiv1beta1/doc.go
index 404b83f..351bf6f 100644
--- a/errorreporting/apiv1beta1/doc.go
+++ b/errorreporting/apiv1beta1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package errorreporting is an experimental, auto-generated package for the
-// errorreporting API.
+// Stackdriver Error Reporting API.
//
// Stackdriver Error Reporting groups and counts similar errors from cloud
// services. The Stackdriver Error Reporting API provides a way to report new
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/errorreporting/apiv1beta1/error_stats_client_example_test.go b/errorreporting/apiv1beta1/error_stats_client_example_test.go
index 6f7e9e6..edebae0 100644
--- a/errorreporting/apiv1beta1/error_stats_client_example_test.go
+++ b/errorreporting/apiv1beta1/error_stats_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/errorreporting/apiv1beta1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
clouderrorreportingpb "google.golang.org/genproto/googleapis/devtools/clouderrorreporting/v1beta1"
)
@@ -45,9 +46,11 @@
it := c.ListGroupStats(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -67,9 +70,11 @@
it := c.ListEvents(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/errorreporting/apiv1beta1/mock_test.go b/errorreporting/apiv1beta1/mock_test.go
index 3aea875..ccb9fe8 100644
--- a/errorreporting/apiv1beta1/mock_test.go
+++ b/errorreporting/apiv1beta1/mock_test.go
@@ -38,6 +38,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -234,7 +235,7 @@
func TestErrorGroupServiceGetGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockErrorGroup.err = grpc.Errorf(errCode, "test error")
+ mockErrorGroup.err = gstatus.Error(errCode, "test error")
var formattedGroupName string = ErrorGroupGroupPath("[PROJECT]", "[GROUP]")
var request = &clouderrorreportingpb.GetGroupRequest{
@@ -248,7 +249,9 @@
resp, err := c.GetGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -293,7 +296,7 @@
func TestErrorGroupServiceUpdateGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockErrorGroup.err = grpc.Errorf(errCode, "test error")
+ mockErrorGroup.err = gstatus.Error(errCode, "test error")
var group *clouderrorreportingpb.ErrorGroup = &clouderrorreportingpb.ErrorGroup{}
var request = &clouderrorreportingpb.UpdateGroupRequest{
@@ -307,7 +310,9 @@
resp, err := c.UpdateGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -365,7 +370,7 @@
func TestErrorStatsServiceListGroupStatsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockErrorStats.err = grpc.Errorf(errCode, "test error")
+ mockErrorStats.err = gstatus.Error(errCode, "test error")
var formattedProjectName string = ErrorStatsProjectPath("[PROJECT]")
var timeRange *clouderrorreportingpb.QueryTimeRange = &clouderrorreportingpb.QueryTimeRange{}
@@ -381,7 +386,9 @@
resp, err := c.ListGroupStats(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -439,7 +446,7 @@
func TestErrorStatsServiceListEventsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockErrorStats.err = grpc.Errorf(errCode, "test error")
+ mockErrorStats.err = gstatus.Error(errCode, "test error")
var formattedProjectName string = ErrorStatsProjectPath("[PROJECT]")
var groupId string = "groupId506361563"
@@ -455,7 +462,9 @@
resp, err := c.ListEvents(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -495,7 +504,7 @@
func TestErrorStatsServiceDeleteEventsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockErrorStats.err = grpc.Errorf(errCode, "test error")
+ mockErrorStats.err = gstatus.Error(errCode, "test error")
var formattedProjectName string = ErrorStatsProjectPath("[PROJECT]")
var request = &clouderrorreportingpb.DeleteEventsRequest{
@@ -509,7 +518,9 @@
resp, err := c.DeleteEvents(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -551,7 +562,7 @@
func TestReportErrorsServiceReportErrorEventError(t *testing.T) {
errCode := codes.PermissionDenied
- mockReportErrors.err = grpc.Errorf(errCode, "test error")
+ mockReportErrors.err = gstatus.Error(errCode, "test error")
var formattedProjectName string = ReportErrorsProjectPath("[PROJECT]")
var event *clouderrorreportingpb.ReportedErrorEvent = &clouderrorreportingpb.ReportedErrorEvent{}
@@ -567,7 +578,9 @@
resp, err := c.ReportErrorEvent(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/errorreporting/apiv1beta1/report_errors_client.go b/errorreporting/apiv1beta1/report_errors_client.go
index 49f53f5..189b85e 100644
--- a/errorreporting/apiv1beta1/report_errors_client.go
+++ b/errorreporting/apiv1beta1/report_errors_client.go
@@ -17,8 +17,6 @@
package errorreporting
import (
- "time"
-
"cloud.google.com/go/internal/version"
gax "github.com/googleapis/gax-go"
"golang.org/x/net/context"
@@ -26,7 +24,6 @@
"google.golang.org/api/transport"
clouderrorreportingpb "google.golang.org/genproto/googleapis/devtools/clouderrorreporting/v1beta1"
"google.golang.org/grpc"
- "google.golang.org/grpc/codes"
)
var (
@@ -46,19 +43,7 @@
}
func defaultReportErrorsCallOptions() *ReportErrorsCallOptions {
- retry := map[[2]string][]gax.CallOption{
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
- }
+ retry := map[[2]string][]gax.CallOption{}
return &ReportErrorsCallOptions{
ReportErrorEvent: retry[[2]string{"default", "non_idempotent"}],
}
diff --git a/iam/admin/apiv1/doc.go b/iam/admin/apiv1/doc.go
index 9fabd40..825facd 100644
--- a/iam/admin/apiv1/doc.go
+++ b/iam/admin/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package admin is an experimental, auto-generated package for the
-// admin API.
+// Google Identity and Access Management (IAM) API.
//
// Manages identity and access control for Google Cloud Platform resources,
// including the creation of service accounts, which you can use to
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/iam/admin/apiv1/iam_client.go b/iam/admin/apiv1/iam_client.go
index 1f222e5..89dff8e 100644
--- a/iam/admin/apiv1/iam_client.go
+++ b/iam/admin/apiv1/iam_client.go
@@ -77,17 +77,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &IamCallOptions{
ListServiceAccounts: retry[[2]string{"default", "idempotent"}],
diff --git a/iam/admin/apiv1/iam_client_example_test.go b/iam/admin/apiv1/iam_client_example_test.go
index 983d48e..901fcb9 100644
--- a/iam/admin/apiv1/iam_client_example_test.go
+++ b/iam/admin/apiv1/iam_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/iam/admin/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
adminpb "google.golang.org/genproto/googleapis/iam/admin/v1"
iampb "google.golang.org/genproto/googleapis/iam/v1"
)
@@ -46,9 +47,11 @@
it := c.ListServiceAccounts(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/iam/admin/apiv1/mock_test.go b/iam/admin/apiv1/mock_test.go
index b3e576c..43ff01b 100644
--- a/iam/admin/apiv1/mock_test.go
+++ b/iam/admin/apiv1/mock_test.go
@@ -40,6 +40,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -309,7 +310,7 @@
func TestIamListServiceAccountsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamProjectPath("[PROJECT]")
var request = &adminpb.ListServiceAccountsRequest{
@@ -323,7 +324,9 @@
resp, err := c.ListServiceAccounts(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -378,7 +381,7 @@
func TestIamGetServiceAccountError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var request = &adminpb.GetServiceAccountRequest{
@@ -392,7 +395,9 @@
resp, err := c.GetServiceAccount(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -449,7 +454,7 @@
func TestIamCreateServiceAccountError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamProjectPath("[PROJECT]")
var accountId string = "accountId-803333011"
@@ -465,7 +470,9 @@
resp, err := c.CreateServiceAccount(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -520,7 +527,7 @@
func TestIamUpdateServiceAccountError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var etag []byte = []byte("21")
var request = &adminpb.ServiceAccount{
@@ -534,7 +541,9 @@
resp, err := c.UpdateServiceAccount(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -571,7 +580,7 @@
func TestIamDeleteServiceAccountError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var request = &adminpb.DeleteServiceAccountRequest{
@@ -585,7 +594,9 @@
err = c.DeleteServiceAccount(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -624,7 +635,7 @@
func TestIamListServiceAccountKeysError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var request = &adminpb.ListServiceAccountKeysRequest{
@@ -638,7 +649,9 @@
resp, err := c.ListServiceAccountKeys(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -685,7 +698,7 @@
func TestIamGetServiceAccountKeyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamKeyPath("[PROJECT]", "[SERVICE_ACCOUNT]", "[KEY]")
var request = &adminpb.GetServiceAccountKeyRequest{
@@ -699,7 +712,9 @@
resp, err := c.GetServiceAccountKey(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -746,7 +761,7 @@
func TestIamCreateServiceAccountKeyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var request = &adminpb.CreateServiceAccountKeyRequest{
@@ -760,7 +775,9 @@
resp, err := c.CreateServiceAccountKey(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -797,7 +814,7 @@
func TestIamDeleteServiceAccountKeyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamKeyPath("[PROJECT]", "[SERVICE_ACCOUNT]", "[KEY]")
var request = &adminpb.DeleteServiceAccountKeyRequest{
@@ -811,7 +828,9 @@
err = c.DeleteServiceAccountKey(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -857,7 +876,7 @@
func TestIamSignBlobError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedName string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var bytesToSign []byte = []byte("45")
@@ -873,7 +892,9 @@
resp, err := c.SignBlob(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -918,7 +939,7 @@
func TestIamGetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedResource string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var request = &iampb.GetIamPolicyRequest{
@@ -932,7 +953,9 @@
resp, err := c.getIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -979,7 +1002,7 @@
func TestIamSetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedResource string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var policy *iampb.Policy = &iampb.Policy{}
@@ -995,7 +1018,9 @@
resp, err := c.setIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1037,7 +1062,7 @@
func TestIamTestIamPermissionsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var formattedResource string = IamServiceAccountPath("[PROJECT]", "[SERVICE_ACCOUNT]")
var permissions []string = nil
@@ -1053,7 +1078,9 @@
resp, err := c.TestIamPermissions(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1093,7 +1120,7 @@
func TestIamQueryGrantableRolesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockIam.err = grpc.Errorf(errCode, "test error")
+ mockIam.err = gstatus.Error(errCode, "test error")
var fullResourceName string = "fullResourceName1300993644"
var request = &adminpb.QueryGrantableRolesRequest{
@@ -1107,7 +1134,9 @@
resp, err := c.QueryGrantableRoles(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/internal/version/version.go b/internal/version/version.go
index 33f1cdb..5eb06ba 100644
--- a/internal/version/version.go
+++ b/internal/version/version.go
@@ -26,7 +26,7 @@
// Repo is the current version of the client libraries in this
// repo. It should be a date in YYYYMMDD format.
-const Repo = "20170404"
+const Repo = "20170621"
// Go returns the Go runtime version. The returned string
// has no whitespace.
diff --git a/language/apiv1/doc.go b/language/apiv1/doc.go
index 73b0f5c..34d357e 100644
--- a/language/apiv1/doc.go
+++ b/language/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package language is an experimental, auto-generated package for the
-// language API.
+// Google Cloud Natural Language API.
//
// Google Cloud Natural Language API provides natural language understanding
// technologies to developers. Examples include sentiment analysis, entity
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/language/apiv1/mock_test.go b/language/apiv1/mock_test.go
index b241bce..2c21479 100644
--- a/language/apiv1/mock_test.go
+++ b/language/apiv1/mock_test.go
@@ -38,6 +38,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -174,7 +175,7 @@
func TestLanguageServiceAnalyzeSentimentError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var request = &languagepb.AnalyzeSentimentRequest{
@@ -188,7 +189,9 @@
resp, err := c.AnalyzeSentiment(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -233,7 +236,7 @@
func TestLanguageServiceAnalyzeEntitiesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var encodingType languagepb.EncodingType = languagepb.EncodingType_NONE
@@ -249,7 +252,9 @@
resp, err := c.AnalyzeEntities(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -294,7 +299,7 @@
func TestLanguageServiceAnalyzeSyntaxError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var encodingType languagepb.EncodingType = languagepb.EncodingType_NONE
@@ -310,7 +315,9 @@
resp, err := c.AnalyzeSyntax(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -357,7 +364,7 @@
func TestLanguageServiceAnnotateTextError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var features *languagepb.AnnotateTextRequest_Features = &languagepb.AnnotateTextRequest_Features{}
@@ -375,7 +382,9 @@
resp, err := c.AnnotateText(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/language/apiv1beta2/doc.go b/language/apiv1beta2/doc.go
index d0313d9..e43233f 100644
--- a/language/apiv1beta2/doc.go
+++ b/language/apiv1beta2/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package language is an experimental, auto-generated package for the
-// language API.
+// Google Cloud Natural Language API.
//
// Google Cloud Natural Language API provides natural language understanding
// technologies to developers. Examples include sentiment analysis, entity
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/language/apiv1beta2/mock_test.go b/language/apiv1beta2/mock_test.go
index 2db4e1e..33972a8 100644
--- a/language/apiv1beta2/mock_test.go
+++ b/language/apiv1beta2/mock_test.go
@@ -38,6 +38,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -186,7 +187,7 @@
func TestLanguageServiceAnalyzeSentimentError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var request = &languagepb.AnalyzeSentimentRequest{
@@ -200,7 +201,9 @@
resp, err := c.AnalyzeSentiment(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -245,7 +248,7 @@
func TestLanguageServiceAnalyzeEntitiesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var encodingType languagepb.EncodingType = languagepb.EncodingType_NONE
@@ -261,7 +264,9 @@
resp, err := c.AnalyzeEntities(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -306,7 +311,7 @@
func TestLanguageServiceAnalyzeEntitySentimentError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var encodingType languagepb.EncodingType = languagepb.EncodingType_NONE
@@ -322,7 +327,9 @@
resp, err := c.AnalyzeEntitySentiment(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -367,7 +374,7 @@
func TestLanguageServiceAnalyzeSyntaxError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var encodingType languagepb.EncodingType = languagepb.EncodingType_NONE
@@ -383,7 +390,9 @@
resp, err := c.AnalyzeSyntax(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -430,7 +439,7 @@
func TestLanguageServiceAnnotateTextError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLanguage.err = grpc.Errorf(errCode, "test error")
+ mockLanguage.err = gstatus.Error(errCode, "test error")
var document *languagepb.Document = &languagepb.Document{}
var features *languagepb.AnnotateTextRequest_Features = &languagepb.AnnotateTextRequest_Features{}
@@ -448,7 +457,9 @@
resp, err := c.AnnotateText(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/logging/apiv2/WriteLogEntries_smoke_test.go b/logging/apiv2/WriteLogEntries_smoke_test.go
index b4d91ab..23f5108 100644
--- a/logging/apiv2/WriteLogEntries_smoke_test.go
+++ b/logging/apiv2/WriteLogEntries_smoke_test.go
@@ -54,7 +54,7 @@
}
var entries []*loggingpb.LogEntry = nil
- var formattedLogName string = LoggingLogPath(projectId, "test-"+strconv.FormatInt(time.Now().UnixNano(), 10)+"")
+ var formattedLogName string = LogPath(projectId, "test-"+strconv.FormatInt(time.Now().UnixNano(), 10)+"")
var request = &loggingpb.WriteLogEntriesRequest{
Entries: entries,
LogName: formattedLogName,
diff --git a/logging/apiv2/config_client.go b/logging/apiv2/config_client.go
index 417769b..c8e171c 100644
--- a/logging/apiv2/config_client.go
+++ b/logging/apiv2/config_client.go
@@ -58,17 +58,7 @@
gax.WithRetry(func() gax.Retryer {
return gax.OnCodes([]codes.Code{
codes.DeadlineExceeded,
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 1000 * time.Millisecond,
- Multiplier: 1.2,
- })
- }),
- },
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
+ codes.Internal,
codes.Unavailable,
}, gax.Backoff{
Initial: 100 * time.Millisecond,
diff --git a/logging/apiv2/config_client_example_test.go b/logging/apiv2/config_client_example_test.go
index 620aa65..7369260 100644
--- a/logging/apiv2/config_client_example_test.go
+++ b/logging/apiv2/config_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/logging/apiv2"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
loggingpb "google.golang.org/genproto/googleapis/logging/v2"
)
@@ -45,9 +46,11 @@
it := c.ListSinks(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/logging/apiv2/doc.go b/logging/apiv2/doc.go
index 3963c8b..0398913 100644
--- a/logging/apiv2/doc.go
+++ b/logging/apiv2/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package logging is an experimental, auto-generated package for the
-// logging API.
+// Stackdriver Logging API.
//
// The Stackdriver Logging API lets you write log entries and manage your
// logs, log sinks and logs-based metrics.
@@ -35,6 +35,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/logging/apiv2/logging_client.go b/logging/apiv2/logging_client.go
index 603893b..9458ed4 100644
--- a/logging/apiv2/logging_client.go
+++ b/logging/apiv2/logging_client.go
@@ -59,17 +59,7 @@
gax.WithRetry(func() gax.Retryer {
return gax.OnCodes([]codes.Code{
codes.DeadlineExceeded,
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 1000 * time.Millisecond,
- Multiplier: 1.2,
- })
- }),
- },
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
+ codes.Internal,
codes.Unavailable,
}, gax.Backoff{
Initial: 100 * time.Millisecond,
@@ -82,6 +72,7 @@
gax.WithRetry(func() gax.Retryer {
return gax.OnCodes([]codes.Code{
codes.DeadlineExceeded,
+ codes.Internal,
codes.Unavailable,
}, gax.Backoff{
Initial: 100 * time.Millisecond,
@@ -153,8 +144,8 @@
c.xGoogHeader = []string{gax.XGoogHeader(kv...)}
}
-// LoggingProjectPath returns the path for the project resource.
-func LoggingProjectPath(project string) string {
+// ProjectPath returns the path for the project resource.
+func ProjectPath(project string) string {
path, err := loggingProjectPathTemplate.Render(map[string]string{
"project": project,
})
@@ -164,8 +155,8 @@
return path
}
-// LoggingLogPath returns the path for the log resource.
-func LoggingLogPath(project, log string) string {
+// LogPath returns the path for the log resource.
+func LogPath(project, log string) string {
path, err := loggingLogPathTemplate.Render(map[string]string{
"project": project,
"log": log,
diff --git a/logging/apiv2/logging_client_example_test.go b/logging/apiv2/logging_client_example_test.go
index 6dc537f..e4321f1 100644
--- a/logging/apiv2/logging_client_example_test.go
+++ b/logging/apiv2/logging_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/logging/apiv2"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
loggingpb "google.golang.org/genproto/googleapis/logging/v2"
)
@@ -79,9 +80,11 @@
it := c.ListLogEntries(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -101,9 +104,11 @@
it := c.ListMonitoredResourceDescriptors(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -123,9 +128,11 @@
it := c.ListLogs(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/logging/apiv2/metrics_client.go b/logging/apiv2/metrics_client.go
index ba2af92..62ec7e7 100644
--- a/logging/apiv2/metrics_client.go
+++ b/logging/apiv2/metrics_client.go
@@ -58,17 +58,7 @@
gax.WithRetry(func() gax.Retryer {
return gax.OnCodes([]codes.Code{
codes.DeadlineExceeded,
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 1000 * time.Millisecond,
- Multiplier: 1.2,
- })
- }),
- },
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
+ codes.Internal,
codes.Unavailable,
}, gax.Backoff{
Initial: 100 * time.Millisecond,
diff --git a/logging/apiv2/metrics_client_example_test.go b/logging/apiv2/metrics_client_example_test.go
index c924120..4bc3eef 100644
--- a/logging/apiv2/metrics_client_example_test.go
+++ b/logging/apiv2/metrics_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/logging/apiv2"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
loggingpb "google.golang.org/genproto/googleapis/logging/v2"
)
@@ -45,9 +46,11 @@
it := c.ListLogMetrics(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/logging/apiv2/mock_test.go b/logging/apiv2/mock_test.go
index 30083a2..746dcd2 100644
--- a/logging/apiv2/mock_test.go
+++ b/logging/apiv2/mock_test.go
@@ -40,6 +40,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -312,7 +313,7 @@
mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
- var formattedLogName string = LoggingLogPath("[PROJECT]", "[LOG]")
+ var formattedLogName string = LogPath("[PROJECT]", "[LOG]")
var request = &loggingpb.DeleteLogRequest{
LogName: formattedLogName,
}
@@ -336,9 +337,9 @@
func TestLoggingServiceV2DeleteLogError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLogging.err = grpc.Errorf(errCode, "test error")
+ mockLogging.err = gstatus.Error(errCode, "test error")
- var formattedLogName string = LoggingLogPath("[PROJECT]", "[LOG]")
+ var formattedLogName string = LogPath("[PROJECT]", "[LOG]")
var request = &loggingpb.DeleteLogRequest{
LogName: formattedLogName,
}
@@ -350,7 +351,9 @@
err = c.DeleteLog(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -389,7 +392,7 @@
func TestLoggingServiceV2WriteLogEntriesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLogging.err = grpc.Errorf(errCode, "test error")
+ mockLogging.err = gstatus.Error(errCode, "test error")
var entries []*loggingpb.LogEntry = nil
var request = &loggingpb.WriteLogEntriesRequest{
@@ -403,7 +406,9 @@
resp, err := c.WriteLogEntries(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -459,7 +464,7 @@
func TestLoggingServiceV2ListLogEntriesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLogging.err = grpc.Errorf(errCode, "test error")
+ mockLogging.err = gstatus.Error(errCode, "test error")
var resourceNames []string = nil
var request = &loggingpb.ListLogEntriesRequest{
@@ -473,7 +478,9 @@
resp, err := c.ListLogEntries(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -526,7 +533,7 @@
func TestLoggingServiceV2ListMonitoredResourceDescriptorsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLogging.err = grpc.Errorf(errCode, "test error")
+ mockLogging.err = gstatus.Error(errCode, "test error")
var request *loggingpb.ListMonitoredResourceDescriptorsRequest = &loggingpb.ListMonitoredResourceDescriptorsRequest{}
@@ -537,7 +544,9 @@
resp, err := c.ListMonitoredResourceDescriptors(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -556,7 +565,7 @@
mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
- var formattedParent string = LoggingProjectPath("[PROJECT]")
+ var formattedParent string = ProjectPath("[PROJECT]")
var request = &loggingpb.ListLogsRequest{
Parent: formattedParent,
}
@@ -593,9 +602,9 @@
func TestLoggingServiceV2ListLogsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockLogging.err = grpc.Errorf(errCode, "test error")
+ mockLogging.err = gstatus.Error(errCode, "test error")
- var formattedParent string = LoggingProjectPath("[PROJECT]")
+ var formattedParent string = ProjectPath("[PROJECT]")
var request = &loggingpb.ListLogsRequest{
Parent: formattedParent,
}
@@ -607,7 +616,9 @@
resp, err := c.ListLogs(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -663,7 +674,7 @@
func TestConfigServiceV2ListSinksError(t *testing.T) {
errCode := codes.PermissionDenied
- mockConfig.err = grpc.Errorf(errCode, "test error")
+ mockConfig.err = gstatus.Error(errCode, "test error")
var formattedParent string = ConfigProjectPath("[PROJECT]")
var request = &loggingpb.ListSinksRequest{
@@ -677,7 +688,9 @@
resp, err := c.ListSinks(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -728,7 +741,7 @@
func TestConfigServiceV2GetSinkError(t *testing.T) {
errCode := codes.PermissionDenied
- mockConfig.err = grpc.Errorf(errCode, "test error")
+ mockConfig.err = gstatus.Error(errCode, "test error")
var formattedSinkName string = ConfigSinkPath("[PROJECT]", "[SINK]")
var request = &loggingpb.GetSinkRequest{
@@ -742,7 +755,9 @@
resp, err := c.GetSink(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -795,7 +810,7 @@
func TestConfigServiceV2CreateSinkError(t *testing.T) {
errCode := codes.PermissionDenied
- mockConfig.err = grpc.Errorf(errCode, "test error")
+ mockConfig.err = gstatus.Error(errCode, "test error")
var formattedParent string = ConfigProjectPath("[PROJECT]")
var sink *loggingpb.LogSink = &loggingpb.LogSink{}
@@ -811,7 +826,9 @@
resp, err := c.CreateSink(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -864,7 +881,7 @@
func TestConfigServiceV2UpdateSinkError(t *testing.T) {
errCode := codes.PermissionDenied
- mockConfig.err = grpc.Errorf(errCode, "test error")
+ mockConfig.err = gstatus.Error(errCode, "test error")
var formattedSinkName string = ConfigSinkPath("[PROJECT]", "[SINK]")
var sink *loggingpb.LogSink = &loggingpb.LogSink{}
@@ -880,7 +897,9 @@
resp, err := c.UpdateSink(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -917,7 +936,7 @@
func TestConfigServiceV2DeleteSinkError(t *testing.T) {
errCode := codes.PermissionDenied
- mockConfig.err = grpc.Errorf(errCode, "test error")
+ mockConfig.err = gstatus.Error(errCode, "test error")
var formattedSinkName string = ConfigSinkPath("[PROJECT]", "[SINK]")
var request = &loggingpb.DeleteSinkRequest{
@@ -931,7 +950,9 @@
err = c.DeleteSink(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -986,7 +1007,7 @@
func TestMetricsServiceV2ListLogMetricsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetrics.err = grpc.Errorf(errCode, "test error")
+ mockMetrics.err = gstatus.Error(errCode, "test error")
var formattedParent string = MetricsProjectPath("[PROJECT]")
var request = &loggingpb.ListLogMetricsRequest{
@@ -1000,7 +1021,9 @@
resp, err := c.ListLogMetrics(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1047,7 +1070,7 @@
func TestMetricsServiceV2GetLogMetricError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetrics.err = grpc.Errorf(errCode, "test error")
+ mockMetrics.err = gstatus.Error(errCode, "test error")
var formattedMetricName string = MetricsMetricPath("[PROJECT]", "[METRIC]")
var request = &loggingpb.GetLogMetricRequest{
@@ -1061,7 +1084,9 @@
resp, err := c.GetLogMetric(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1110,7 +1135,7 @@
func TestMetricsServiceV2CreateLogMetricError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetrics.err = grpc.Errorf(errCode, "test error")
+ mockMetrics.err = gstatus.Error(errCode, "test error")
var formattedParent string = MetricsProjectPath("[PROJECT]")
var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
@@ -1126,7 +1151,9 @@
resp, err := c.CreateLogMetric(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1175,7 +1202,7 @@
func TestMetricsServiceV2UpdateLogMetricError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetrics.err = grpc.Errorf(errCode, "test error")
+ mockMetrics.err = gstatus.Error(errCode, "test error")
var formattedMetricName string = MetricsMetricPath("[PROJECT]", "[METRIC]")
var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
@@ -1191,7 +1218,9 @@
resp, err := c.UpdateLogMetric(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1228,7 +1257,7 @@
func TestMetricsServiceV2DeleteLogMetricError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetrics.err = grpc.Errorf(errCode, "test error")
+ mockMetrics.err = gstatus.Error(errCode, "test error")
var formattedMetricName string = MetricsMetricPath("[PROJECT]", "[METRIC]")
var request = &loggingpb.DeleteLogMetricRequest{
@@ -1242,7 +1271,9 @@
err = c.DeleteLogMetric(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
diff --git a/longrunning/autogen/doc.go b/longrunning/autogen/doc.go
index 8e3789b..2196806 100644
--- a/longrunning/autogen/doc.go
+++ b/longrunning/autogen/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package longrunning is an experimental, auto-generated package for the
-// longrunning API.
+// Google Long Running Operations API.
//
//
// Use the client at cloud.google.com/go/longrunning in preference to this.
@@ -33,6 +33,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{}
}
diff --git a/longrunning/autogen/mock_test.go b/longrunning/autogen/mock_test.go
index 95e02be..ddbee22 100644
--- a/longrunning/autogen/mock_test.go
+++ b/longrunning/autogen/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -177,7 +178,7 @@
func TestOperationsGetOperationError(t *testing.T) {
errCode := codes.PermissionDenied
- mockOperations.err = grpc.Errorf(errCode, "test error")
+ mockOperations.err = gstatus.Error(errCode, "test error")
var name string = "name3373707"
var request = &longrunningpb.GetOperationRequest{
@@ -191,7 +192,9 @@
resp, err := c.GetOperation(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -249,7 +252,7 @@
func TestOperationsListOperationsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockOperations.err = grpc.Errorf(errCode, "test error")
+ mockOperations.err = gstatus.Error(errCode, "test error")
var name string = "name3373707"
var filter string = "filter-1274492040"
@@ -265,7 +268,9 @@
resp, err := c.ListOperations(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -302,7 +307,7 @@
func TestOperationsCancelOperationError(t *testing.T) {
errCode := codes.PermissionDenied
- mockOperations.err = grpc.Errorf(errCode, "test error")
+ mockOperations.err = gstatus.Error(errCode, "test error")
var name string = "name3373707"
var request = &longrunningpb.CancelOperationRequest{
@@ -316,7 +321,9 @@
err = c.CancelOperation(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -352,7 +359,7 @@
func TestOperationsDeleteOperationError(t *testing.T) {
errCode := codes.PermissionDenied
- mockOperations.err = grpc.Errorf(errCode, "test error")
+ mockOperations.err = gstatus.Error(errCode, "test error")
var name string = "name3373707"
var request = &longrunningpb.DeleteOperationRequest{
@@ -366,7 +373,9 @@
err = c.DeleteOperation(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
diff --git a/longrunning/autogen/operations_client_example_test.go b/longrunning/autogen/operations_client_example_test.go
index 02de149..646faea 100644
--- a/longrunning/autogen/operations_client_example_test.go
+++ b/longrunning/autogen/operations_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/longrunning/autogen"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
longrunningpb "google.golang.org/genproto/googleapis/longrunning"
)
@@ -63,9 +64,11 @@
it := c.ListOperations(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/monitoring/apiv3/doc.go b/monitoring/apiv3/doc.go
index b57411b..ca72c8e 100644
--- a/monitoring/apiv3/doc.go
+++ b/monitoring/apiv3/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package monitoring is an experimental, auto-generated package for the
-// monitoring API.
+// Stackdriver Monitoring API.
//
// Manages your Stackdriver Monitoring data and configurations. Most projects
// must be associated with a Stackdriver account, with a few exceptions as
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/monitoring/apiv3/group_client.go b/monitoring/apiv3/group_client.go
index 765b151..e861d7d 100644
--- a/monitoring/apiv3/group_client.go
+++ b/monitoring/apiv3/group_client.go
@@ -68,17 +68,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &GroupCallOptions{
ListGroups: retry[[2]string{"default", "idempotent"}],
diff --git a/monitoring/apiv3/group_client_example_test.go b/monitoring/apiv3/group_client_example_test.go
index 095661a..cae59bf 100644
--- a/monitoring/apiv3/group_client_example_test.go
+++ b/monitoring/apiv3/group_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/monitoring/apiv3"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
monitoringpb "google.golang.org/genproto/googleapis/monitoring/v3"
)
@@ -45,9 +46,11 @@
it := c.ListGroups(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -137,9 +140,11 @@
it := c.ListGroupMembers(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/monitoring/apiv3/metric_client.go b/monitoring/apiv3/metric_client.go
index 53dced8..4b24b6d 100644
--- a/monitoring/apiv3/metric_client.go
+++ b/monitoring/apiv3/metric_client.go
@@ -72,17 +72,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &MetricCallOptions{
ListMonitoredResourceDescriptors: retry[[2]string{"default", "idempotent"}],
diff --git a/monitoring/apiv3/metric_client_example_test.go b/monitoring/apiv3/metric_client_example_test.go
index 5dbb5ef..a768489 100644
--- a/monitoring/apiv3/metric_client_example_test.go
+++ b/monitoring/apiv3/metric_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/monitoring/apiv3"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
monitoringpb "google.golang.org/genproto/googleapis/monitoring/v3"
)
@@ -45,9 +46,11 @@
it := c.ListMonitoredResourceDescriptors(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -85,9 +88,11 @@
it := c.ListMetricDescriptors(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -159,9 +164,11 @@
it := c.ListTimeSeries(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/monitoring/apiv3/mock_test.go b/monitoring/apiv3/mock_test.go
index 54e6899..25aa2a7 100644
--- a/monitoring/apiv3/mock_test.go
+++ b/monitoring/apiv3/mock_test.go
@@ -41,6 +41,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -327,7 +328,7 @@
func TestGroupServiceListGroupsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var formattedName string = GroupProjectPath("[PROJECT]")
var request = &monitoringpb.ListGroupsRequest{
@@ -341,7 +342,9 @@
resp, err := c.ListGroups(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -392,7 +395,7 @@
func TestGroupServiceGetGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var formattedName string = GroupGroupPath("[PROJECT]", "[GROUP]")
var request = &monitoringpb.GetGroupRequest{
@@ -406,7 +409,9 @@
resp, err := c.GetGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -459,7 +464,7 @@
func TestGroupServiceCreateGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var formattedName string = GroupProjectPath("[PROJECT]")
var group *monitoringpb.Group = &monitoringpb.Group{}
@@ -475,7 +480,9 @@
resp, err := c.CreateGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -526,7 +533,7 @@
func TestGroupServiceUpdateGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var group *monitoringpb.Group = &monitoringpb.Group{}
var request = &monitoringpb.UpdateGroupRequest{
@@ -540,7 +547,9 @@
resp, err := c.UpdateGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -577,7 +586,7 @@
func TestGroupServiceDeleteGroupError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var formattedName string = GroupGroupPath("[PROJECT]", "[GROUP]")
var request = &monitoringpb.DeleteGroupRequest{
@@ -591,7 +600,9 @@
err = c.DeleteGroup(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -648,7 +659,7 @@
func TestGroupServiceListGroupMembersError(t *testing.T) {
errCode := codes.PermissionDenied
- mockGroup.err = grpc.Errorf(errCode, "test error")
+ mockGroup.err = gstatus.Error(errCode, "test error")
var formattedName string = GroupGroupPath("[PROJECT]", "[GROUP]")
var request = &monitoringpb.ListGroupMembersRequest{
@@ -662,7 +673,9 @@
resp, err := c.ListGroupMembers(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -718,7 +731,7 @@
func TestMetricServiceListMonitoredResourceDescriptorsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricProjectPath("[PROJECT]")
var request = &monitoringpb.ListMonitoredResourceDescriptorsRequest{
@@ -732,7 +745,9 @@
resp, err := c.ListMonitoredResourceDescriptors(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -781,7 +796,7 @@
func TestMetricServiceGetMonitoredResourceDescriptorError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricMonitoredResourceDescriptorPath("[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
var request = &monitoringpb.GetMonitoredResourceDescriptorRequest{
@@ -795,7 +810,9 @@
resp, err := c.GetMonitoredResourceDescriptor(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -851,7 +868,7 @@
func TestMetricServiceListMetricDescriptorsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricProjectPath("[PROJECT]")
var request = &monitoringpb.ListMetricDescriptorsRequest{
@@ -865,7 +882,9 @@
resp, err := c.ListMetricDescriptors(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -916,7 +935,7 @@
func TestMetricServiceGetMetricDescriptorError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricMetricDescriptorPath("[PROJECT]", "[METRIC_DESCRIPTOR]")
var request = &monitoringpb.GetMetricDescriptorRequest{
@@ -930,7 +949,9 @@
resp, err := c.GetMetricDescriptor(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -983,7 +1004,7 @@
func TestMetricServiceCreateMetricDescriptorError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricProjectPath("[PROJECT]")
var metricDescriptor *metricpb.MetricDescriptor = &metricpb.MetricDescriptor{}
@@ -999,7 +1020,9 @@
resp, err := c.CreateMetricDescriptor(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1036,7 +1059,7 @@
func TestMetricServiceDeleteMetricDescriptorError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricMetricDescriptorPath("[PROJECT]", "[METRIC_DESCRIPTOR]")
var request = &monitoringpb.DeleteMetricDescriptorRequest{
@@ -1050,7 +1073,9 @@
err = c.DeleteMetricDescriptor(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1111,7 +1136,7 @@
func TestMetricServiceListTimeSeriesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricProjectPath("[PROJECT]")
var filter string = "filter-1274492040"
@@ -1131,7 +1156,9 @@
resp, err := c.ListTimeSeries(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1170,7 +1197,7 @@
func TestMetricServiceCreateTimeSeriesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockMetric.err = grpc.Errorf(errCode, "test error")
+ mockMetric.err = gstatus.Error(errCode, "test error")
var formattedName string = MetricProjectPath("[PROJECT]")
var timeSeries []*monitoringpb.TimeSeries = nil
@@ -1186,7 +1213,9 @@
err = c.CreateTimeSeries(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
diff --git a/pubsub/apiv1/doc.go b/pubsub/apiv1/doc.go
index 6d884a8..6a4addc 100644
--- a/pubsub/apiv1/doc.go
+++ b/pubsub/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package pubsub is an experimental, auto-generated package for the
-// pubsub API.
+// Google Cloud Pub/Sub API.
//
// Provides reliable, many-to-many, asynchronous messaging between
// applications.
@@ -35,6 +35,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/pubsub/apiv1/mock_test.go b/pubsub/apiv1/mock_test.go
index e5935b1..eddd8e5 100644
--- a/pubsub/apiv1/mock_test.go
+++ b/pubsub/apiv1/mock_test.go
@@ -41,6 +41,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -452,7 +453,7 @@
func TestPublisherCreateTopicError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedName string = PublisherTopicPath("[PROJECT]", "[TOPIC]")
var request = &pubsubpb.Topic{
@@ -466,7 +467,9 @@
resp, err := c.CreateTopic(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -516,7 +519,7 @@
func TestPublisherPublishError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedTopic string = PublisherTopicPath("[PROJECT]", "[TOPIC]")
var data []byte = []byte("-86")
@@ -536,7 +539,9 @@
resp, err := c.Publish(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -579,7 +584,7 @@
func TestPublisherGetTopicError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedTopic string = PublisherTopicPath("[PROJECT]", "[TOPIC]")
var request = &pubsubpb.GetTopicRequest{
@@ -593,7 +598,9 @@
resp, err := c.GetTopic(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -649,7 +656,7 @@
func TestPublisherListTopicsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedProject string = PublisherProjectPath("[PROJECT]")
var request = &pubsubpb.ListTopicsRequest{
@@ -663,7 +670,9 @@
resp, err := c.ListTopics(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -719,7 +728,7 @@
func TestPublisherListTopicSubscriptionsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedTopic string = PublisherTopicPath("[PROJECT]", "[TOPIC]")
var request = &pubsubpb.ListTopicSubscriptionsRequest{
@@ -733,7 +742,9 @@
resp, err := c.ListTopicSubscriptions(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -770,7 +781,7 @@
func TestPublisherDeleteTopicError(t *testing.T) {
errCode := codes.PermissionDenied
- mockPublisher.err = grpc.Errorf(errCode, "test error")
+ mockPublisher.err = gstatus.Error(errCode, "test error")
var formattedTopic string = PublisherTopicPath("[PROJECT]", "[TOPIC]")
var request = &pubsubpb.DeleteTopicRequest{
@@ -784,7 +795,9 @@
err = c.DeleteTopic(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -834,7 +847,7 @@
func TestSubscriberCreateSubscriptionError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedName string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var formattedTopic string = SubscriberTopicPath("[PROJECT]", "[TOPIC]")
@@ -850,7 +863,9 @@
resp, err := c.CreateSubscription(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -899,7 +914,7 @@
func TestSubscriberGetSubscriptionError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var request = &pubsubpb.GetSubscriptionRequest{
@@ -913,7 +928,9 @@
resp, err := c.GetSubscription(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -964,7 +981,7 @@
func TestSubscriberUpdateSubscriptionError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var subscription *pubsubpb.Subscription = &pubsubpb.Subscription{}
var updateMask *field_maskpb.FieldMask = &field_maskpb.FieldMask{}
@@ -980,7 +997,9 @@
resp, err := c.UpdateSubscription(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1036,7 +1055,7 @@
func TestSubscriberListSubscriptionsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedProject string = SubscriberProjectPath("[PROJECT]")
var request = &pubsubpb.ListSubscriptionsRequest{
@@ -1050,7 +1069,9 @@
resp, err := c.ListSubscriptions(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1087,7 +1108,7 @@
func TestSubscriberDeleteSubscriptionError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var request = &pubsubpb.DeleteSubscriptionRequest{
@@ -1101,7 +1122,9 @@
err = c.DeleteSubscription(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1141,7 +1164,7 @@
func TestSubscriberModifyAckDeadlineError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var ackIds []string = nil
@@ -1159,7 +1182,9 @@
err = c.ModifyAckDeadline(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1197,7 +1222,7 @@
func TestSubscriberAcknowledgeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var ackIds []string = nil
@@ -1213,7 +1238,9 @@
err = c.Acknowledge(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1254,7 +1281,7 @@
func TestSubscriberPullError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var maxMessages int32 = 496131527
@@ -1270,13 +1297,19 @@
resp, err := c.Pull(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
}
func TestSubscriberStreamingPull(t *testing.T) {
- var expectedResponse *pubsubpb.StreamingPullResponse = &pubsubpb.StreamingPullResponse{}
+ var receivedMessagesElement *pubsubpb.ReceivedMessage = &pubsubpb.ReceivedMessage{}
+ var receivedMessages = []*pubsubpb.ReceivedMessage{receivedMessagesElement}
+ var expectedResponse = &pubsubpb.StreamingPullResponse{
+ ReceivedMessages: receivedMessages,
+ }
mockSubscriber.err = nil
mockSubscriber.reqs = nil
@@ -1322,7 +1355,7 @@
func TestSubscriberStreamingPullError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var streamAckDeadlineSeconds int32 = 1875467245
@@ -1348,7 +1381,9 @@
}
resp, err := stream.Recv()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1387,7 +1422,7 @@
func TestSubscriberModifyPushConfigError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var pushConfig *pubsubpb.PushConfig = &pubsubpb.PushConfig{}
@@ -1403,7 +1438,9 @@
err = c.ModifyPushConfig(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1458,7 +1495,7 @@
func TestSubscriberListSnapshotsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedProject string = SubscriberProjectPath("[PROJECT]")
var request = &pubsubpb.ListSnapshotsRequest{
@@ -1472,7 +1509,9 @@
resp, err := c.ListSnapshots(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1519,7 +1558,7 @@
func TestSubscriberCreateSnapshotError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedName string = SubscriberSnapshotPath("[PROJECT]", "[SNAPSHOT]")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
@@ -1535,7 +1574,9 @@
resp, err := c.CreateSnapshot(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -1572,7 +1613,7 @@
func TestSubscriberDeleteSnapshotError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSnapshot string = SubscriberSnapshotPath("[PROJECT]", "[SNAPSHOT]")
var request = &pubsubpb.DeleteSnapshotRequest{
@@ -1586,7 +1627,9 @@
err = c.DeleteSnapshot(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -1625,7 +1668,7 @@
func TestSubscriberSeekError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSubscriber.err = grpc.Errorf(errCode, "test error")
+ mockSubscriber.err = gstatus.Error(errCode, "test error")
var formattedSubscription string = SubscriberSubscriptionPath("[PROJECT]", "[SUBSCRIPTION]")
var request = &pubsubpb.SeekRequest{
@@ -1639,7 +1682,9 @@
resp, err := c.Seek(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/pubsub/apiv1/publisher_client_example_test.go b/pubsub/apiv1/publisher_client_example_test.go
index 6e63f80..ad77ce8 100644
--- a/pubsub/apiv1/publisher_client_example_test.go
+++ b/pubsub/apiv1/publisher_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/pubsub/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
pubsubpb "google.golang.org/genproto/googleapis/pubsub/v1"
)
@@ -133,9 +134,11 @@
it := c.ListTopics(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -155,9 +158,11 @@
it := c.ListTopicSubscriptions(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/pubsub/apiv1/subscriber_client.go b/pubsub/apiv1/subscriber_client.go
index 2e26b6e..29fc439 100644
--- a/pubsub/apiv1/subscriber_client.go
+++ b/pubsub/apiv1/subscriber_client.go
@@ -78,28 +78,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
- {"messaging", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
{"messaging", "pull"}: {
gax.WithRetry(func() gax.Retryer {
return gax.OnCodes([]codes.Code{
diff --git a/pubsub/apiv1/subscriber_client_example_test.go b/pubsub/apiv1/subscriber_client_example_test.go
index 53c0661..066fca1 100644
--- a/pubsub/apiv1/subscriber_client_example_test.go
+++ b/pubsub/apiv1/subscriber_client_example_test.go
@@ -21,6 +21,7 @@
"cloud.google.com/go/pubsub/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
pubsubpb "google.golang.org/genproto/googleapis/pubsub/v1"
)
@@ -135,9 +136,11 @@
it := c.ListSubscriptions(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -273,9 +276,11 @@
it := c.ListSnapshots(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/spanner/admin/database/apiv1/database_admin_client.go b/spanner/admin/database/apiv1/database_admin_client.go
index 95d6230..65506b6 100644
--- a/spanner/admin/database/apiv1/database_admin_client.go
+++ b/spanner/admin/database/apiv1/database_admin_client.go
@@ -74,17 +74,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 1000 * time.Millisecond,
- Max: 32000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &DatabaseAdminCallOptions{
ListDatabases: retry[[2]string{"default", "idempotent"}],
diff --git a/spanner/admin/database/apiv1/database_admin_client_example_test.go b/spanner/admin/database/apiv1/database_admin_client_example_test.go
index 0769d11..f0e4006 100644
--- a/spanner/admin/database/apiv1/database_admin_client_example_test.go
+++ b/spanner/admin/database/apiv1/database_admin_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/spanner/admin/database/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
iampb "google.golang.org/genproto/googleapis/iam/v1"
databasepb "google.golang.org/genproto/googleapis/spanner/admin/database/v1"
)
@@ -46,9 +47,11 @@
it := c.ListDatabases(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/spanner/admin/database/apiv1/doc.go b/spanner/admin/database/apiv1/doc.go
index 46eaaae..03ee144 100644
--- a/spanner/admin/database/apiv1/doc.go
+++ b/spanner/admin/database/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package database is an experimental, auto-generated package for the
-// database API.
+// Cloud Spanner Database Admin API.
//
package database // import "cloud.google.com/go/spanner/admin/database/apiv1"
@@ -31,6 +31,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/spanner/admin/database/apiv1/mock_test.go b/spanner/admin/database/apiv1/mock_test.go
index accd30c..36393ff 100644
--- a/spanner/admin/database/apiv1/mock_test.go
+++ b/spanner/admin/database/apiv1/mock_test.go
@@ -41,6 +41,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -250,7 +251,7 @@
func TestDatabaseAdminListDatabasesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedParent string = DatabaseAdminInstancePath("[PROJECT]", "[INSTANCE]")
var request = &databasepb.ListDatabasesRequest{
@@ -264,7 +265,9 @@
resp, err := c.ListDatabases(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -351,7 +354,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -394,7 +399,7 @@
func TestDatabaseAdminGetDatabaseError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedName string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var request = &databasepb.GetDatabaseRequest{
@@ -408,7 +413,9 @@
resp, err := c.GetDatabase(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -489,7 +496,9 @@
}
err = respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -525,7 +534,7 @@
func TestDatabaseAdminDropDatabaseError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedDatabase string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var request = &databasepb.DropDatabaseRequest{
@@ -539,7 +548,9 @@
err = c.DropDatabase(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -578,7 +589,7 @@
func TestDatabaseAdminGetDatabaseDdlError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedDatabase string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var request = &databasepb.GetDatabaseDdlRequest{
@@ -592,7 +603,9 @@
resp, err := c.GetDatabaseDdl(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -639,7 +652,7 @@
func TestDatabaseAdminSetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var policy *iampb.Policy = &iampb.Policy{}
@@ -655,7 +668,9 @@
resp, err := c.SetIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -700,7 +715,7 @@
func TestDatabaseAdminGetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var request = &iampb.GetIamPolicyRequest{
@@ -714,7 +729,9 @@
resp, err := c.GetIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -756,7 +773,7 @@
func TestDatabaseAdminTestIamPermissionsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockDatabaseAdmin.err = grpc.Errorf(errCode, "test error")
+ mockDatabaseAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = DatabaseAdminDatabasePath("[PROJECT]", "[INSTANCE]", "[DATABASE]")
var permissions []string = nil
@@ -772,7 +789,9 @@
resp, err := c.TestIamPermissions(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/spanner/admin/instance/apiv1/doc.go b/spanner/admin/instance/apiv1/doc.go
index b0c9821..dd4ea68 100644
--- a/spanner/admin/instance/apiv1/doc.go
+++ b/spanner/admin/instance/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package instance is an experimental, auto-generated package for the
-// instance API.
+// Cloud Spanner Instance Admin API.
//
package instance // import "cloud.google.com/go/spanner/admin/instance/apiv1"
@@ -31,6 +31,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/spanner/admin/instance/apiv1/instance_admin_client.go b/spanner/admin/instance/apiv1/instance_admin_client.go
index 138e813..281433d 100644
--- a/spanner/admin/instance/apiv1/instance_admin_client.go
+++ b/spanner/admin/instance/apiv1/instance_admin_client.go
@@ -76,17 +76,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 1000 * time.Millisecond,
- Max: 32000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &InstanceAdminCallOptions{
ListInstanceConfigs: retry[[2]string{"default", "idempotent"}],
diff --git a/spanner/admin/instance/apiv1/instance_admin_client_example_test.go b/spanner/admin/instance/apiv1/instance_admin_client_example_test.go
index ee807fd..ba506fc 100644
--- a/spanner/admin/instance/apiv1/instance_admin_client_example_test.go
+++ b/spanner/admin/instance/apiv1/instance_admin_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/spanner/admin/instance/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
iampb "google.golang.org/genproto/googleapis/iam/v1"
instancepb "google.golang.org/genproto/googleapis/spanner/admin/instance/v1"
)
@@ -46,9 +47,11 @@
it := c.ListInstanceConfigs(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
@@ -86,9 +89,11 @@
it := c.ListInstances(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/spanner/admin/instance/apiv1/mock_test.go b/spanner/admin/instance/apiv1/mock_test.go
index 8728d0b..0b2bb2f 100644
--- a/spanner/admin/instance/apiv1/mock_test.go
+++ b/spanner/admin/instance/apiv1/mock_test.go
@@ -42,6 +42,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -263,7 +264,7 @@
func TestInstanceAdminListInstanceConfigsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedParent string = InstanceAdminProjectPath("[PROJECT]")
var request = &instancepb.ListInstanceConfigsRequest{
@@ -277,7 +278,9 @@
resp, err := c.ListInstanceConfigs(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -322,7 +325,7 @@
func TestInstanceAdminGetInstanceConfigError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedName string = InstanceAdminInstanceConfigPath("[PROJECT]", "[INSTANCE_CONFIG]")
var request = &instancepb.GetInstanceConfigRequest{
@@ -336,7 +339,9 @@
resp, err := c.GetInstanceConfig(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -392,7 +397,7 @@
func TestInstanceAdminListInstancesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedParent string = InstanceAdminProjectPath("[PROJECT]")
var request = &instancepb.ListInstancesRequest{
@@ -406,7 +411,9 @@
resp, err := c.ListInstances(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -455,7 +462,7 @@
func TestInstanceAdminGetInstanceError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedName string = InstanceAdminInstancePath("[PROJECT]", "[INSTANCE]")
var request = &instancepb.GetInstanceRequest{
@@ -469,7 +476,9 @@
resp, err := c.GetInstance(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -566,7 +575,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -659,7 +670,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -696,7 +709,7 @@
func TestInstanceAdminDeleteInstanceError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedName string = InstanceAdminInstancePath("[PROJECT]", "[INSTANCE]")
var request = &instancepb.DeleteInstanceRequest{
@@ -710,7 +723,9 @@
err = c.DeleteInstance(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -756,7 +771,7 @@
func TestInstanceAdminSetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = InstanceAdminInstancePath("[PROJECT]", "[INSTANCE]")
var policy *iampb.Policy = &iampb.Policy{}
@@ -772,7 +787,9 @@
resp, err := c.SetIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -817,7 +834,7 @@
func TestInstanceAdminGetIamPolicyError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = InstanceAdminInstancePath("[PROJECT]", "[INSTANCE]")
var request = &iampb.GetIamPolicyRequest{
@@ -831,7 +848,9 @@
resp, err := c.GetIamPolicy(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -873,7 +892,7 @@
func TestInstanceAdminTestIamPermissionsError(t *testing.T) {
errCode := codes.PermissionDenied
- mockInstanceAdmin.err = grpc.Errorf(errCode, "test error")
+ mockInstanceAdmin.err = gstatus.Error(errCode, "test error")
var formattedResource string = InstanceAdminInstancePath("[PROJECT]", "[INSTANCE]")
var permissions []string = nil
@@ -889,7 +908,9 @@
resp, err := c.TestIamPermissions(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/speech/apiv1/doc.go b/speech/apiv1/doc.go
index a50a2a8..c884fa9 100644
--- a/speech/apiv1/doc.go
+++ b/speech/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package speech is an experimental, auto-generated package for the
-// speech API.
+// Google Cloud Speech API.
//
// Google Cloud Speech API.
package speech // import "cloud.google.com/go/speech/apiv1"
@@ -32,6 +32,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/speech/apiv1/mock_test.go b/speech/apiv1/mock_test.go
index 2416c72..331e0d6 100644
--- a/speech/apiv1/mock_test.go
+++ b/speech/apiv1/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -187,7 +188,7 @@
func TestSpeechRecognizeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSpeech.err = grpc.Errorf(errCode, "test error")
+ mockSpeech.err = gstatus.Error(errCode, "test error")
var encoding speechpb.RecognitionConfig_AudioEncoding = speechpb.RecognitionConfig_FLAC
var sampleRateHertz int32 = 44100
@@ -215,7 +216,9 @@
resp, err := c.Recognize(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -323,7 +326,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -370,7 +375,7 @@
func TestSpeechStreamingRecognizeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSpeech.err = grpc.Errorf(errCode, "test error")
+ mockSpeech.err = gstatus.Error(errCode, "test error")
var request *speechpb.StreamingRecognizeRequest = &speechpb.StreamingRecognizeRequest{}
@@ -391,7 +396,9 @@
}
resp, err := stream.Recv()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/speech/apiv1/speech_client.go b/speech/apiv1/speech_client.go
index 1ae84db..fa6eedc 100644
--- a/speech/apiv1/speech_client.go
+++ b/speech/apiv1/speech_client.go
@@ -60,17 +60,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &CallOptions{
Recognize: retry[[2]string{"default", "idempotent"}],
diff --git a/speech/apiv1beta1/doc.go b/speech/apiv1beta1/doc.go
index 97f9095..1bd7911 100644
--- a/speech/apiv1beta1/doc.go
+++ b/speech/apiv1beta1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package speech is an experimental, auto-generated package for the
-// speech API.
+// Google Cloud Speech API.
//
// Google Cloud Speech API.
package speech // import "cloud.google.com/go/speech/apiv1beta1"
@@ -32,6 +32,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/speech/apiv1beta1/mock_test.go b/speech/apiv1beta1/mock_test.go
index 2a2f328..03cd96f 100644
--- a/speech/apiv1beta1/mock_test.go
+++ b/speech/apiv1beta1/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -185,7 +186,7 @@
func TestSpeechSyncRecognizeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSpeech.err = grpc.Errorf(errCode, "test error")
+ mockSpeech.err = gstatus.Error(errCode, "test error")
var encoding speechpb.RecognitionConfig_AudioEncoding = speechpb.RecognitionConfig_FLAC
var sampleRate int32 = 44100
@@ -211,7 +212,9 @@
resp, err := c.SyncRecognize(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -315,7 +318,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -365,7 +370,7 @@
func TestSpeechStreamingRecognizeError(t *testing.T) {
errCode := codes.PermissionDenied
- mockSpeech.err = grpc.Errorf(errCode, "test error")
+ mockSpeech.err = gstatus.Error(errCode, "test error")
var request *speechpb.StreamingRecognizeRequest = &speechpb.StreamingRecognizeRequest{}
@@ -386,7 +391,9 @@
}
resp, err := stream.Recv()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/speech/apiv1beta1/speech_client.go b/speech/apiv1beta1/speech_client.go
index 4b04919..609d7b2 100644
--- a/speech/apiv1beta1/speech_client.go
+++ b/speech/apiv1beta1/speech_client.go
@@ -60,17 +60,6 @@
})
}),
},
- {"default", "non_idempotent"}: {
- gax.WithRetry(func() gax.Retryer {
- return gax.OnCodes([]codes.Code{
- codes.Unavailable,
- }, gax.Backoff{
- Initial: 100 * time.Millisecond,
- Max: 60000 * time.Millisecond,
- Multiplier: 1.3,
- })
- }),
- },
}
return &CallOptions{
SyncRecognize: retry[[2]string{"default", "idempotent"}],
diff --git a/trace/apiv1/doc.go b/trace/apiv1/doc.go
index 0b04376..b5878ca 100644
--- a/trace/apiv1/doc.go
+++ b/trace/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package trace is an experimental, auto-generated package for the
-// trace API.
+// Stackdriver Trace API.
//
// Send and retrieve trace data from Stackdriver Trace. Data is generated and
// available by default for all App Engine applications. Data from other
@@ -37,6 +37,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/trace/apiv1/mock_test.go b/trace/apiv1/mock_test.go
index b8f338a..c69283b 100644
--- a/trace/apiv1/mock_test.go
+++ b/trace/apiv1/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -159,7 +160,7 @@
func TestTraceServicePatchTracesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockTrace.err = grpc.Errorf(errCode, "test error")
+ mockTrace.err = gstatus.Error(errCode, "test error")
var projectId string = "projectId-1969970175"
var traces *cloudtracepb.Traces = &cloudtracepb.Traces{}
@@ -175,7 +176,9 @@
err = c.PatchTraces(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
}
@@ -221,7 +224,7 @@
func TestTraceServiceGetTraceError(t *testing.T) {
errCode := codes.PermissionDenied
- mockTrace.err = grpc.Errorf(errCode, "test error")
+ mockTrace.err = gstatus.Error(errCode, "test error")
var projectId string = "projectId-1969970175"
var traceId string = "traceId1270300245"
@@ -237,7 +240,9 @@
resp, err := c.GetTrace(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
@@ -293,7 +298,7 @@
func TestTraceServiceListTracesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockTrace.err = grpc.Errorf(errCode, "test error")
+ mockTrace.err = gstatus.Error(errCode, "test error")
var projectId string = "projectId-1969970175"
var request = &cloudtracepb.ListTracesRequest{
@@ -307,7 +312,9 @@
resp, err := c.ListTraces(context.Background(), request).Next()
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/trace/apiv1/trace_client_example_test.go b/trace/apiv1/trace_client_example_test.go
index 733c591..ee885a7 100644
--- a/trace/apiv1/trace_client_example_test.go
+++ b/trace/apiv1/trace_client_example_test.go
@@ -19,6 +19,7 @@
import (
"cloud.google.com/go/trace/apiv1"
"golang.org/x/net/context"
+ "google.golang.org/api/iterator"
cloudtracepb "google.golang.org/genproto/googleapis/devtools/cloudtrace/v1"
)
@@ -79,9 +80,11 @@
it := c.ListTraces(ctx, req)
for {
resp, err := it.Next()
+ if err == iterator.Done {
+ break
+ }
if err != nil {
// TODO: Handle error.
- break
}
// TODO: Use resp.
_ = resp
diff --git a/videointelligence/apiv1beta1/doc.go b/videointelligence/apiv1beta1/doc.go
index 70ec302..0240b18 100644
--- a/videointelligence/apiv1beta1/doc.go
+++ b/videointelligence/apiv1beta1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package videointelligence is an experimental, auto-generated package for the
-// videointelligence API.
+// Google Cloud Video Intelligence API.
//
// Google Cloud Video Intelligence API.
//
@@ -34,6 +34,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/videointelligence/apiv1beta1/mock_test.go b/videointelligence/apiv1beta1/mock_test.go
index df5c8a7..7615da5 100644
--- a/videointelligence/apiv1beta1/mock_test.go
+++ b/videointelligence/apiv1beta1/mock_test.go
@@ -39,6 +39,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -124,7 +125,7 @@
Features: features,
}
- c, err := NewVideoIntelligenceClient(context.Background(), clientOpt)
+ c, err := NewClient(context.Background(), clientOpt)
if err != nil {
t.Fatal(err)
}
@@ -169,7 +170,7 @@
Features: features,
}
- c, err := NewVideoIntelligenceClient(context.Background(), clientOpt)
+ c, err := NewClient(context.Background(), clientOpt)
if err != nil {
t.Fatal(err)
}
@@ -180,7 +181,9 @@
}
resp, err := respLRO.Wait(context.Background())
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp
diff --git a/videointelligence/apiv1beta1/video_intelligence_client.go b/videointelligence/apiv1beta1/video_intelligence_client.go
index 9ad1746..13cfbba 100644
--- a/videointelligence/apiv1beta1/video_intelligence_client.go
+++ b/videointelligence/apiv1beta1/video_intelligence_client.go
@@ -32,19 +32,19 @@
"google.golang.org/grpc/codes"
)
-// VideoIntelligenceCallOptions contains the retry settings for each method of VideoIntelligenceClient.
-type VideoIntelligenceCallOptions struct {
+// CallOptions contains the retry settings for each method of Client.
+type CallOptions struct {
AnnotateVideo []gax.CallOption
}
-func defaultVideoIntelligenceClientOptions() []option.ClientOption {
+func defaultClientOptions() []option.ClientOption {
return []option.ClientOption{
option.WithEndpoint("videointelligence.googleapis.com:443"),
option.WithScopes(DefaultAuthScopes()...),
}
}
-func defaultVideoIntelligenceCallOptions() *VideoIntelligenceCallOptions {
+func defaultCallOptions() *CallOptions {
retry := map[[2]string][]gax.CallOption{
{"default", "idempotent"}: {
gax.WithRetry(func() gax.Retryer {
@@ -59,18 +59,18 @@
}),
},
}
- return &VideoIntelligenceCallOptions{
+ return &CallOptions{
AnnotateVideo: retry[[2]string{"default", "idempotent"}],
}
}
-// VideoIntelligenceClient is a client for interacting with Google Cloud Video Intelligence API.
-type VideoIntelligenceClient struct {
+// Client is a client for interacting with Google Cloud Video Intelligence API.
+type Client struct {
// The connection to the service.
conn *grpc.ClientConn
// The gRPC API client.
- videoIntelligenceClient videointelligencepb.VideoIntelligenceServiceClient
+ client videointelligencepb.VideoIntelligenceServiceClient
// LROClient is used internally to handle longrunning operations.
// It is exposed so that its CallOptions can be modified if required.
@@ -78,25 +78,25 @@
LROClient *lroauto.OperationsClient
// The call options for this service.
- CallOptions *VideoIntelligenceCallOptions
+ CallOptions *CallOptions
// The metadata to be sent with each request.
xGoogHeader []string
}
-// NewVideoIntelligenceClient creates a new video intelligence service client.
+// NewClient creates a new video intelligence service client.
//
// Service that implements Google Cloud Video Intelligence API.
-func NewVideoIntelligenceClient(ctx context.Context, opts ...option.ClientOption) (*VideoIntelligenceClient, error) {
- conn, err := transport.DialGRPC(ctx, append(defaultVideoIntelligenceClientOptions(), opts...)...)
+func NewClient(ctx context.Context, opts ...option.ClientOption) (*Client, error) {
+ conn, err := transport.DialGRPC(ctx, append(defaultClientOptions(), opts...)...)
if err != nil {
return nil, err
}
- c := &VideoIntelligenceClient{
+ c := &Client{
conn: conn,
- CallOptions: defaultVideoIntelligenceCallOptions(),
+ CallOptions: defaultCallOptions(),
- videoIntelligenceClient: videointelligencepb.NewVideoIntelligenceServiceClient(conn),
+ client: videointelligencepb.NewVideoIntelligenceServiceClient(conn),
}
c.SetGoogleClientInfo()
@@ -114,20 +114,20 @@
}
// Connection returns the client's connection to the API service.
-func (c *VideoIntelligenceClient) Connection() *grpc.ClientConn {
+func (c *Client) Connection() *grpc.ClientConn {
return c.conn
}
// Close closes the connection to the API service. The user should invoke this when
// the client is no longer required.
-func (c *VideoIntelligenceClient) Close() error {
+func (c *Client) Close() error {
return c.conn.Close()
}
// SetGoogleClientInfo sets the name and version of the application in
// the `x-goog-api-client` header passed on each request. Intended for
// use by Google-written clients.
-func (c *VideoIntelligenceClient) SetGoogleClientInfo(keyval ...string) {
+func (c *Client) SetGoogleClientInfo(keyval ...string) {
kv := append([]string{"gl-go", version.Go()}, keyval...)
kv = append(kv, "gapic", version.Repo, "gax", gax.Version, "grpc", grpc.Version)
c.xGoogHeader = []string{gax.XGoogHeader(kv...)}
@@ -137,13 +137,13 @@
// retrieved through the `google.longrunning.Operations` interface.
// `Operation.metadata` contains `AnnotateVideoProgress` (progress).
// `Operation.response` contains `AnnotateVideoResponse` (results).
-func (c *VideoIntelligenceClient) AnnotateVideo(ctx context.Context, req *videointelligencepb.AnnotateVideoRequest, opts ...gax.CallOption) (*AnnotateVideoOperation, error) {
+func (c *Client) AnnotateVideo(ctx context.Context, req *videointelligencepb.AnnotateVideoRequest, opts ...gax.CallOption) (*AnnotateVideoOperation, error) {
ctx = insertXGoog(ctx, c.xGoogHeader)
opts = append(c.CallOptions.AnnotateVideo[0:len(c.CallOptions.AnnotateVideo):len(c.CallOptions.AnnotateVideo)], opts...)
var resp *longrunningpb.Operation
err := gax.Invoke(ctx, func(ctx context.Context, settings gax.CallSettings) error {
var err error
- resp, err = c.videoIntelligenceClient.AnnotateVideo(ctx, req, settings.GRPC...)
+ resp, err = c.client.AnnotateVideo(ctx, req, settings.GRPC...)
return err
}, opts...)
if err != nil {
@@ -161,7 +161,7 @@
// AnnotateVideoOperation returns a new AnnotateVideoOperation from a given name.
// The name must be that of a previously created AnnotateVideoOperation, possibly from a different process.
-func (c *VideoIntelligenceClient) AnnotateVideoOperation(name string) *AnnotateVideoOperation {
+func (c *Client) AnnotateVideoOperation(name string) *AnnotateVideoOperation {
return &AnnotateVideoOperation{
lro: longrunning.InternalNewOperation(c.LROClient, &longrunningpb.Operation{Name: name}),
}
diff --git a/videointelligence/apiv1beta1/video_intelligence_client_example_test.go b/videointelligence/apiv1beta1/video_intelligence_client_example_test.go
index 6ee4079..b858b39 100644
--- a/videointelligence/apiv1beta1/video_intelligence_client_example_test.go
+++ b/videointelligence/apiv1beta1/video_intelligence_client_example_test.go
@@ -22,9 +22,9 @@
videointelligencepb "google.golang.org/genproto/googleapis/cloud/videointelligence/v1beta1"
)
-func ExampleNewVideoIntelligenceClient() {
+func ExampleNewClient() {
ctx := context.Background()
- c, err := videointelligence.NewVideoIntelligenceClient(ctx)
+ c, err := videointelligence.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
@@ -32,9 +32,9 @@
_ = c
}
-func ExampleVideoIntelligenceClient_AnnotateVideo() {
+func ExampleClient_AnnotateVideo() {
ctx := context.Background()
- c, err := videointelligence.NewVideoIntelligenceClient(ctx)
+ c, err := videointelligence.NewClient(ctx)
if err != nil {
// TODO: Handle error.
}
diff --git a/vision/apiv1/doc.go b/vision/apiv1/doc.go
index a26220c..b86cca3 100644
--- a/vision/apiv1/doc.go
+++ b/vision/apiv1/doc.go
@@ -15,7 +15,7 @@
// AUTO-GENERATED CODE. DO NOT EDIT.
// Package vision is an experimental, auto-generated package for the
-// vision API.
+// Google Cloud Vision API.
//
// Integrates Google Vision features, including image labeling, face, logo,
// and landmark detection, optical character recognition (OCR), and detection
@@ -36,6 +36,8 @@
return metadata.NewOutgoingContext(ctx, md)
}
+// DefaultAuthScopes reports the authentication scopes required
+// by this package.
func DefaultAuthScopes() []string {
return []string{
"https://www.googleapis.com/auth/cloud-platform",
diff --git a/vision/apiv1/mock_test.go b/vision/apiv1/mock_test.go
index 03446c1..9d47da7 100644
--- a/vision/apiv1/mock_test.go
+++ b/vision/apiv1/mock_test.go
@@ -38,6 +38,7 @@
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
+ gstatus "google.golang.org/grpc/status"
)
var _ = io.EOF
@@ -135,7 +136,7 @@
func TestImageAnnotatorBatchAnnotateImagesError(t *testing.T) {
errCode := codes.PermissionDenied
- mockImageAnnotator.err = grpc.Errorf(errCode, "test error")
+ mockImageAnnotator.err = gstatus.Error(errCode, "test error")
var requests []*visionpb.AnnotateImageRequest = nil
var request = &visionpb.BatchAnnotateImagesRequest{
@@ -149,7 +150,9 @@
resp, err := c.BatchAnnotateImages(context.Background(), request)
- if c := grpc.Code(err); c != errCode {
+ if st, ok := gstatus.FromError(err); !ok {
+ t.Errorf("got error %v, expected grpc error", err)
+ } else if c := st.Code(); c != errCode {
t.Errorf("got error code %q, want %q", c, errCode)
}
_ = resp