(t *testing.T)
| 85 | } |
| 86 | |
| 87 | func TestToMetadata(t *testing.T) { |
| 88 | sym := writev2.NewSymbolTable() |
| 89 | |
| 90 | for _, tc := range []struct { |
| 91 | input writev2.Metadata |
| 92 | expected metadata.Metadata |
| 93 | }{ |
| 94 | { |
| 95 | input: writev2.Metadata{}, |
| 96 | expected: metadata.Metadata{ |
| 97 | Type: model.MetricTypeUnknown, |
| 98 | }, |
| 99 | }, |
| 100 | { |
| 101 | input: writev2.Metadata{ |
| 102 | Type: 12414, // Unknown. |
| 103 | }, |
| 104 | expected: metadata.Metadata{ |
| 105 | Type: model.MetricTypeUnknown, |
| 106 | }, |
| 107 | }, |
| 108 | { |
| 109 | input: writev2.Metadata{ |
| 110 | Type: writev2.Metadata_METRIC_TYPE_COUNTER, |
| 111 | HelpRef: sym.Symbolize("help1"), |
| 112 | UnitRef: sym.Symbolize("unit1"), |
| 113 | }, |
| 114 | expected: metadata.Metadata{ |
| 115 | Type: model.MetricTypeCounter, |
| 116 | Help: "help1", |
| 117 | Unit: "unit1", |
| 118 | }, |
| 119 | }, |
| 120 | { |
| 121 | input: writev2.Metadata{ |
| 122 | Type: writev2.Metadata_METRIC_TYPE_STATESET, |
| 123 | HelpRef: sym.Symbolize("help2"), |
| 124 | }, |
| 125 | expected: metadata.Metadata{ |
| 126 | Type: model.MetricTypeStateset, |
| 127 | Help: "help2", |
| 128 | }, |
| 129 | }, |
| 130 | } { |
| 131 | t.Run("", func(t *testing.T) { |
| 132 | ts := writev2.TimeSeries{Metadata: tc.input} |
| 133 | meta, err := ts.ToMetadata(sym.Symbols()) |
| 134 | require.NoError(t, err) |
| 135 | require.Equal(t, tc.expected, meta) |
| 136 | }) |
| 137 | } |
| 138 | |
| 139 | t.Run("out of bounds unit ref", func(t *testing.T) { |
| 140 | ts := writev2.TimeSeries{Metadata: writev2.Metadata{UnitRef: 999}} |
| 141 | _, err := ts.ToMetadata(sym.Symbols()) |
| 142 | require.Error(t, err) |
| 143 | require.Contains(t, err.Error(), "metadata unit_ref 999 outside of symbols table") |
| 144 | }) |
nothing calls this directly
no test coverage detected
searching dependent graphs…