summaryrefslogtreecommitdiff
path: root/metrics_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'metrics_test.go')
-rw-r--r--metrics_test.go35
1 files changed, 35 insertions, 0 deletions
diff --git a/metrics_test.go b/metrics_test.go
new file mode 100644
index 0000000..a91e93c
--- /dev/null
+++ b/metrics_test.go
@@ -0,0 +1,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()
+}