38 lines
831 B
Go
38 lines
831 B
Go
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")
|
|
}
|
|
}
|