MCPcopy
hub / github.com/grafana/tempo / requireEqualSeriesSets

Function requireEqualSeriesSets

pkg/traceql/engine_metrics_test.go:3569–3590  ·  view source on GitHub ↗

requireEqualSeriesSets is like require.Equal for SeriesSets and supports NaN.

(t *testing.T, expected []TimeSeries, actual SeriesSet)

Source from the content-addressed store, hash-verified

3567
3568// requireEqualSeriesSets is like require.Equal for SeriesSets and supports NaN.
3569func requireEqualSeriesSets(t *testing.T, expected []TimeSeries, actual SeriesSet) {
3570 require.Equal(t, len(expected), len(actual))
3571
3572 for _, eTS := range expected {
3573 k := eTS.Labels.MapKey()
3574 aTS, ok := actual[k]
3575 require.True(t, ok, "expected series %s to be in result", k)
3576 require.Equal(t, eTS.Labels, aTS.Labels, "expected labels %v, got %v", eTS.Labels, aTS.Labels)
3577
3578 eSamples := eTS.Values
3579 aSamples := aTS.Values
3580
3581 require.Equal(t, len(eSamples), len(aSamples), "expected %d samples for %s, got %d", len(eSamples), k, len(aSamples))
3582 for i := range eSamples {
3583 if math.IsNaN(eSamples[i]) {
3584 require.True(t, math.IsNaN(aSamples[i]))
3585 } else {
3586 require.InDelta(t, eSamples[i], aSamples[i], 0.001, "expected %v, got %v, for %s[%d]", eSamples[i], aSamples[i], k, i)
3587 }
3588 }
3589 }
3590}
3591
3592func TestHistogramAggregator_LatencySpike(t *testing.T) {
3593 // Simulate a latency spike: normal traffic, then a spike, then normal again

Callers 10

TestQuantileOverTimeFunction · 0.85
TestCountOverTimeFunction · 0.85
TestAvgOverTimeInstantNsFunction · 0.85
TestRateCutoffFunction · 0.85
TestHistogramOverTimeFunction · 0.85
TestCompareFunction · 0.85
TestCompareScalesResultsFunction · 0.85

Calls 2

EqualMethod · 0.45
MapKeyMethod · 0.45

Tested by

no test coverage detected