MCPcopy
hub / github.com/grpc/grpc-go / TestServerRPCEventsLogAll

Method TestServerRPCEventsLogAll

gcp/observability/logging_test.go:339–545  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

337}
338
339func (s) TestServerRPCEventsLogAll(t *testing.T) {
340 fle := &fakeLoggingExporter{
341 t: t,
342 }
343 defer func(ne func(ctx context.Context, config *config) (loggingExporter, error)) {
344 newLoggingExporter = ne
345 }(newLoggingExporter)
346
347 newLoggingExporter = func(context.Context, *config) (loggingExporter, error) {
348 return fle, nil
349 }
350
351 serverRPCEventLogAllConfig := &config{
352 ProjectID: "fake",
353 CloudLogging: &cloudLogging{
354 ServerRPCEvents: []serverRPCEvents{
355 {
356 Methods: []string{"*"},
357 MaxMetadataBytes: 30,
358 MaxMessageBytes: 30,
359 },
360 },
361 },
362 }
363 cleanup, err := setupObservabilitySystemWithConfig(serverRPCEventLogAllConfig)
364 if err != nil {
365 t.Fatalf("error setting up observability %v", err)
366 }
367 defer cleanup()
368
369 ss := &stubserver.StubServer{
370 UnaryCallF: func(context.Context, *testpb.SimpleRequest) (*testpb.SimpleResponse, error) {
371 return &testpb.SimpleResponse{}, nil
372 },
373 FullDuplexCallF: func(stream testgrpc.TestService_FullDuplexCallServer) error {
374 if _, err := stream.Recv(); err != nil {
375 return err
376 }
377 if err := stream.Send(&testpb.StreamingOutputCallResponse{}); err != nil {
378 return err
379 }
380 if _, err := stream.Recv(); err != io.EOF {
381 return err
382 }
383 return nil
384 },
385 }
386 if err := ss.Start(nil); err != nil {
387 t.Fatalf("Error starting endpoint server: %v", err)
388 }
389 defer ss.Stop()
390
391 ctx, cancel := context.WithTimeout(context.Background(), defaultTestTimeout)
392 defer cancel()
393 if _, err := ss.Client.UnaryCall(ctx, &testpb.SimpleRequest{}); err != nil {
394 t.Fatalf("Unexpected error from UnaryCall: %v", err)
395 }
396 grpcLogEntriesWant := []*grpcLogEntry{

Callers

nothing calls this directly

Calls 12

StartMethod · 0.95
StopMethod · 0.95
cmpLoggingEntryListFunction · 0.85
FatalfMethod · 0.65
RecvMethod · 0.65
SendMethod · 0.65
UnaryCallMethod · 0.65
FullDuplexCallMethod · 0.65
CloseSendMethod · 0.65
LockMethod · 0.45
UnlockMethod · 0.45

Tested by

no test coverage detected