MCPcopy Create free account
hub / github.com/prometheus/common / TestProtoMultiMessageDecoder

Function TestProtoMultiMessageDecoder

expfmt/decode_test.go:407–426  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

405}
406
407func TestProtoMultiMessageDecoder(t *testing.T) {
408 data, err := os.ReadFile("testdata/protobuf-multimessage")
409 require.NoErrorf(t, err, "Reading file failed: %v", err)
410
411 buf := bytes.NewReader(data)
412 decoder := NewDecoder(buf, FmtProtoDelim)
413 var metrics []*dto.MetricFamily
414 for {
415 var mf dto.MetricFamily
416 if err := decoder.Decode(&mf); err != nil {
417 if errors.Is(err, io.EOF) {
418 break
419 }
420 t.Fatalf("Unmarshalling failed: %v", err)
421 }
422 metrics = append(metrics, &mf)
423 }
424
425 require.Lenf(t, metrics, 6, "Expected %d metrics but got %d!", 6, len(metrics))
426}
427
428func testDiscriminatorHTTPHeader(t testing.TB) {
429 scenarios := []struct {

Callers

nothing calls this directly

Calls 2

DecodeMethod · 0.95
NewDecoderFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…