summaryrefslogtreecommitdiff
path: root/metrics_test.go
blob: a91e93c6d96bf093fff20ec413aec3b0db0d6445 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main

import (
    "testing"
    "strings"
    "fmt"
)

func TestLargeMetrics(t *testing.T){
    first := rune(0x41)
    last := rune(0x5a)
    omb := strings.Builder{}
    for r1 := first; r1 <= last; r1++{
        for r2 := first; r2 <= last; r2++{
            name := strings.Builder{}
            name.WriteString("test_metric_name_")
            name.WriteRune(r1)
            name.WriteRune(r2)
            omb.WriteString("# TYPE ")
            omb.WriteString(name.String())
            omb.WriteString(" gauge\n")
            for i := 0; i < 16; i++{
                omb.WriteString(name.String())
                omb.WriteString(fmt.Sprintf("{index=\"%d\"} 1\n", i))
            }
        }
    }
    omb.WriteString("# EOF\n")

    m, e := ParseMetrics(([]byte)(omb.String()), "application/openmetrics-text")
    if e != nil{
        t.Error(e)
    }
    m.String()
}