(t *testing.T)
| 30 | ) |
| 31 | |
| 32 | func TestTelemetry(t *testing.T) { |
| 33 | tt := testutils.T{T: t} |
| 34 | |
| 35 | baseErr := errors.New("world") |
| 36 | err := errors.Wrap( |
| 37 | telemetrykeys.WithTelemetry( |
| 38 | telemetrykeys.WithTelemetry( |
| 39 | baseErr, |
| 40 | "a", "b"), |
| 41 | "b", "c"), |
| 42 | "hello") |
| 43 | |
| 44 | tt.Check(markers.Is(err, baseErr)) |
| 45 | tt.CheckStringEqual(err.Error(), "hello: world") |
| 46 | |
| 47 | keys := telemetrykeys.GetTelemetryKeys(err) |
| 48 | sort.Strings(keys) |
| 49 | tt.CheckDeepEqual(keys, []string{"a", "b", "c"}) |
| 50 | |
| 51 | errV := fmt.Sprintf("%+v", err) |
| 52 | tt.Check(strings.Contains(errV, `keys: [a b]`)) |
| 53 | tt.Check(strings.Contains(errV, `keys: [b c]`)) |
| 54 | |
| 55 | enc := errbase.EncodeError(context.Background(), err) |
| 56 | newErr := errbase.DecodeError(context.Background(), enc) |
| 57 | |
| 58 | tt.Check(markers.Is(newErr, baseErr)) |
| 59 | tt.CheckStringEqual(newErr.Error(), "hello: world") |
| 60 | |
| 61 | keys = telemetrykeys.GetTelemetryKeys(newErr) |
| 62 | sort.Strings(keys) |
| 63 | tt.CheckDeepEqual(keys, []string{"a", "b", "c"}) |
| 64 | |
| 65 | errV = fmt.Sprintf("%+v", newErr) |
| 66 | tt.Check(strings.Contains(errV, `keys: [a b]`)) |
| 67 | tt.Check(strings.Contains(errV, `keys: [b c]`)) |
| 68 | } |
| 69 | |
| 70 | func TestFormat(t *testing.T) { |
| 71 | tt := testutils.T{t} |
nothing calls this directly
no test coverage detected
searching dependent graphs…