fix(handler): return raw measurement mode value

- return the int type mode value instead of converting it to a boolean
- update attribute query tests accordingly
This commit is contained in:
douxu 2026-07-22 16:27:08 +08:00
parent 34b9a569ae
commit ec7d97d4d2
2 changed files with 7 additions and 7 deletions

View File

@ -290,7 +290,7 @@ func buildMeasurementAttributeValue(
} }
return loadValue(ctx, measurement.DataSource) return loadValue(ctx, measurement.DataSource)
case "mode": case "mode":
return measurement.Mode == 1, nil return measurement.Mode, nil
case "meta": case "meta":
return "MEASUREMENT", nil return "MEASUREMENT", nil
case "type": case "type":

View File

@ -214,7 +214,7 @@ func TestBuildMeasurementAttributeValue(t *testing.T) {
expected any expected any
}{ }{
{field: "value", expected: float64(220)}, {field: "value", expected: float64(220)},
{field: "mode", expected: true}, {field: "mode", expected: int16(1)},
{field: "meta", expected: "MEASUREMENT"}, {field: "meta", expected: "MEASUREMENT"},
{field: "type", expected: "TM"}, {field: "type", expected: "TM"},
{field: "name", expected: "110kV_TV.IA_rms"}, {field: "name", expected: "110kV_TV.IA_rms"},
@ -252,12 +252,12 @@ func TestBuildMeasurementAttributeValueMode(t *testing.T) {
tests := []struct { tests := []struct {
name string name string
mode int16 mode int16
expected bool expected int16
}{ }{
{name: "automatic mode", mode: 1, expected: true}, {name: "collected value", mode: 1, expected: 1},
{name: "manual mode", mode: 0, expected: false}, {name: "manually assigned value", mode: 0, expected: 0},
{name: "other positive mode", mode: 2, expected: false}, {name: "other positive mode", mode: 2, expected: 2},
{name: "negative mode", mode: -1, expected: false}, {name: "negative mode", mode: -1, expected: -1},
} }
for _, tt := range tests { for _, tt := range tests {