Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
aos
GitHub Repository: aos/grafana-agent
Path: blob/main/pkg/agentctl/cardinality_test.go
4093 views
1
package agentctl
2
3
import (
4
"sort"
5
"strings"
6
"testing"
7
8
"github.com/stretchr/testify/require"
9
)
10
11
func TestCardinality(t *testing.T) {
12
walDir := setupTestWAL(t)
13
14
cardinality, err := FindCardinality(walDir, "test-job", "test-instance")
15
sort.Slice(cardinality, func(i, j int) bool {
16
return strings.Compare(cardinality[i].Metric, cardinality[j].Metric) == -1
17
})
18
19
require.NoError(t, err)
20
require.Equal(t, []Cardinality{
21
{Metric: "metric_0", Instances: 2},
22
{Metric: "metric_1", Instances: 3}, // metric_1 has a duplicate hash so it's the only metric with 3 instances
23
{Metric: "metric_2", Instances: 2},
24
{Metric: "metric_3", Instances: 2},
25
{Metric: "metric_4", Instances: 2},
26
{Metric: "metric_5", Instances: 2},
27
{Metric: "metric_6", Instances: 2},
28
{Metric: "metric_7", Instances: 2},
29
{Metric: "metric_8", Instances: 2},
30
{Metric: "metric_9", Instances: 2},
31
}, cardinality)
32
}
33
34