summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--exporter-multiplexer_test.go60
1 files changed, 60 insertions, 0 deletions
diff --git a/exporter-multiplexer_test.go b/exporter-multiplexer_test.go
new file mode 100644
index 0000000..7c73df7
--- /dev/null
+++ b/exporter-multiplexer_test.go
@@ -0,0 +1,60 @@
+package main
+
+import (
+ "testing"
+ "strings"
+)
+
+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")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"0\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"1\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"2\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"3\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"4\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"5\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"6\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"7\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"8\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"9\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"10\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"11\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"12\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"13\"} 1\n")
+ omb.WriteString(name.String())
+ omb.WriteString("{index=\"14\"} 1\n")
+ }
+ }
+ omb.WriteString("# EOF\n")
+
+ m, e := ParseMetrics(([]byte)(omb.String()), "application/openmetrics-text")
+ if e != nil{
+ t.Error(e)
+ }
+ m.String()
+}