@@ -133,35 +133,41 @@ func TestGetCurrentTokenWithCLIOverrideWithoutSecretFile(t *testing.T) {
133133 require .Equal (& bTrue , token .Insecure )
134134}
135135
136- type fakeSchemaServer struct {
136+ type fakeServer struct {
137137 v1.UnimplementedSchemaServiceServer
138138 v1.UnimplementedExperimentalServiceServer
139+ v1.UnimplementedWatchServiceServer
139140 v1.UnimplementedPermissionsServiceServer
140141 testFunc func ()
141142}
142143
143- func (fss * fakeSchemaServer ) ReadSchema (_ context.Context , _ * v1.ReadSchemaRequest ) (* v1.ReadSchemaResponse , error ) {
144+ func (fss * fakeServer ) ReadSchema (_ context.Context , _ * v1.ReadSchemaRequest ) (* v1.ReadSchemaResponse , error ) {
144145 fss .testFunc ()
145146 return nil , status .Error (codes .Unavailable , "" )
146147}
147148
148- func (fss * fakeSchemaServer ) BulkImportRelationships (grpc.ClientStreamingServer [v1.BulkImportRelationshipsRequest , v1.BulkImportRelationshipsResponse ]) error {
149+ func (fss * fakeServer ) BulkImportRelationships (grpc.ClientStreamingServer [v1.BulkImportRelationshipsRequest , v1.BulkImportRelationshipsResponse ]) error {
149150 fss .testFunc ()
150151 return status .Errorf (codes .Aborted , "" )
151152}
152153
153- func (fss * fakeSchemaServer ) ImportBulkRelationships (grpc.ClientStreamingServer [v1.ImportBulkRelationshipsRequest , v1.ImportBulkRelationshipsResponse ]) error {
154+ func (fss * fakeServer ) ImportBulkRelationships (grpc.ClientStreamingServer [v1.ImportBulkRelationshipsRequest , v1.ImportBulkRelationshipsResponse ]) error {
154155 fss .testFunc ()
155156 return status .Errorf (codes .Aborted , "" )
156157}
157158
159+ func (fss * fakeServer ) Watch (* v1.WatchRequest , grpc.ServerStreamingServer [v1.WatchResponse ]) error {
160+ fss .testFunc ()
161+ return status .Errorf (codes .Unavailable , "" )
162+ }
163+
158164func TestRetries (t * testing.T ) {
159165 ctx := t .Context ()
160166 var callCount uint
161167 lis := bufconn .Listen (1024 * 1024 )
162168 s := grpc .NewServer ()
163169
164- fakeServer := & fakeSchemaServer {testFunc : func () {
170+ fakeServer := & fakeServer {testFunc : func () {
165171 callCount ++
166172 }}
167173 v1 .RegisterSchemaServiceServer (s , fakeServer )
@@ -190,22 +196,25 @@ func TestRetries(t *testing.T) {
190196 c , err := authzed .NewClient ("passthrough://bufnet" , dialOpts ... )
191197 require .NoError (t , err )
192198
193- _ , err = c .ReadSchema (ctx , & v1.ReadSchemaRequest {})
194- grpcutil .RequireStatus (t , codes .Unavailable , err )
195- require .Equal (t , retries , callCount )
199+ t .Run ("read_schema" , func (t * testing.T ) {
200+ _ , err = c .ReadSchema (ctx , & v1.ReadSchemaRequest {})
201+ grpcutil .RequireStatus (t , codes .Unavailable , err )
202+ require .Equal (t , retries , callCount )
203+ })
196204}
197205
198- func TestDoesNotRetryBackupRestore (t * testing.T ) {
206+ func TestDoesNotRetry (t * testing.T ) {
199207 ctx := t .Context ()
200208 var callCount uint
201209 lis := bufconn .Listen (1024 * 1024 )
202210 s := grpc .NewServer ()
203211
204- fakeServer := & fakeSchemaServer {testFunc : func () {
212+ fakeServer := & fakeServer {testFunc : func () {
205213 callCount ++
206214 }}
207215 v1 .RegisterPermissionsServiceServer (s , fakeServer )
208216 v1 .RegisterExperimentalServiceServer (s , fakeServer )
217+ v1 .RegisterWatchServiceServer (s , fakeServer )
209218
210219 go func () {
211220 _ = s .Serve (lis )
@@ -231,20 +240,34 @@ func TestDoesNotRetryBackupRestore(t *testing.T) {
231240 c , err := authzed .NewClientWithExperimentalAPIs ("passthrough://bufnet" , dialOpts ... )
232241 require .NoError (t , err )
233242
234- ibc , err := c .ImportBulkRelationships (ctx )
235- require .NoError (t , err )
236- err = ibc .SendMsg (& v1.ImportBulkRelationshipsRequest {})
237- require .NoError (t , err )
238- _ , err = ibc .CloseAndRecv ()
239- grpcutil .RequireStatus (t , codes .Aborted , err )
240- require .Equal (t , uint (1 ), callCount )
243+ t .Run ("import_bulk" , func (t * testing.T ) {
244+ ibc , err := c .ImportBulkRelationships (ctx )
245+ require .NoError (t , err )
246+ err = ibc .SendMsg (& v1.ImportBulkRelationshipsRequest {})
247+ require .NoError (t , err )
248+ _ , err = ibc .CloseAndRecv ()
249+ grpcutil .RequireStatus (t , codes .Aborted , err )
250+ require .Equal (t , uint (1 ), callCount )
251+ })
241252
242- callCount = 0
243- bic , err := c .BulkImportRelationships (ctx )
244- require .NoError (t , err )
245- err = bic .SendMsg (& v1.BulkImportRelationshipsRequest {})
246- require .NoError (t , err )
247- _ , err = bic .CloseAndRecv ()
248- grpcutil .RequireStatus (t , codes .Aborted , err )
249- require .Equal (t , uint (1 ), callCount )
253+ t .Run ("bulk_import" , func (t * testing.T ) {
254+ callCount = 0
255+ bic , err := c .BulkImportRelationships (ctx )
256+ require .NoError (t , err )
257+ err = bic .SendMsg (& v1.BulkImportRelationshipsRequest {})
258+ require .NoError (t , err )
259+ _ , err = bic .CloseAndRecv ()
260+ grpcutil .RequireStatus (t , codes .Aborted , err )
261+ require .Equal (t , uint (1 ), callCount )
262+ })
263+
264+ t .Run ("watch" , func (t * testing.T ) {
265+ callCount = 0
266+ watchReq , err := c .Watch (ctx , & v1.WatchRequest {})
267+ require .NoError (t , err )
268+ resp , err := watchReq .Recv ()
269+ require .Nil (t , resp )
270+ grpcutil .RequireStatus (t , codes .Unavailable , err )
271+ require .Equal (t , uint (1 ), callCount )
272+ })
250273}
0 commit comments