MCPcopy
hub / github.com/grafana/dskit / TestStatus

Function TestStatus

grpcutil/status_test.go:119–141  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

117}
118
119func TestStatus(t *testing.T) {
120 stat := Status(codes.FailedPrecondition, "bad data")
121 require.Equal(t, codes.FailedPrecondition, stat.Code())
122 require.Equal(t, "bad data", stat.Message())
123 require.Len(t, stat.Details(), 0)
124
125 originalDetails := []proto.Message{&ErrorDetails{Cause: WRONG_CLUSTER_VALIDATION_LABEL}, &ErrorDetails{Cause: UNKNOWN_CAUSE}}
126 stat = Status(codes.FailedPrecondition, "bad data", originalDetails...)
127 require.Equal(t, codes.FailedPrecondition, stat.Code())
128 require.Equal(t, "bad data", stat.Message())
129 details := stat.Details()
130 require.Len(t, details, 2)
131 for i := range details {
132 det, ok := details[i].(*ErrorDetails)
133 require.True(t, ok)
134 require.Equal(t, originalDetails[i], det)
135 }
136
137 badDetails := []proto.Message{nil}
138 stat = Status(codes.Internal, "bad details", badDetails...)
139 require.Equal(t, codes.InvalidArgument, stat.Code())
140 require.Equal(t, `error while creating details for a Status with code Internal and error message "bad details": proto: Marshal called with nil`, stat.Message())
141}
142
143func TestIsCanceled(t *testing.T) {
144 testCases := map[string]struct {

Callers

nothing calls this directly

Calls 4

StatusFunction · 0.85
MessageMethod · 0.80
EqualMethod · 0.45
LenMethod · 0.45

Tested by

no test coverage detected