modelRT/model/measurement_attribute_test.go

38 lines
831 B
Go
Raw Normal View History

package model
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestMeasurementTypeString(t *testing.T) {
tests := []struct {
value int16
expected string
}{
{value: 0, expected: "TM"},
{value: 1, expected: "TS"},
{value: 2, expected: "TC"},
{value: 3, expected: "TA"},
{value: 4, expected: "SP"},
}
for _, test := range tests {
t.Run(test.expected, func(t *testing.T) {
actual, err := MeasurementTypeString(test.value)
require.NoError(t, err)
assert.Equal(t, test.expected, actual)
})
}
}
func TestMeasurementTypeStringRejectsInvalidValues(t *testing.T) {
for _, value := range []int16{-1, 5, 100} {
_, err := MeasurementTypeString(value)
require.Error(t, err)
assert.Contains(t, err.Error(), "unsupported measurement type")
}
}