milvus/internal/proxy/get_max_len_test.go
congqixia 73a181d226
Fix get vector it timeout and improve some string const usage (#24141)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2023-05-16 17:41:22 +08:00

60 lines
1.2 KiB
Go

package proxy
import (
"testing"
"github.com/milvus-io/milvus-proto/go-api/commonpb"
"github.com/milvus-io/milvus/pkg/common"
"github.com/stretchr/testify/assert"
"github.com/milvus-io/milvus-proto/go-api/schemapb"
)
func TestGetMaxLength(t *testing.T) {
t.Run("not string type", func(t *testing.T) {
f := &schemapb.FieldSchema{
DataType: schemapb.DataType_Bool,
}
_, err := GetMaxLength(f)
assert.Error(t, err)
})
t.Run("max length not found", func(t *testing.T) {
f := &schemapb.FieldSchema{
DataType: schemapb.DataType_VarChar,
}
_, err := GetMaxLength(f)
assert.Error(t, err)
})
t.Run("max length not int", func(t *testing.T) {
f := &schemapb.FieldSchema{
DataType: schemapb.DataType_VarChar,
TypeParams: []*commonpb.KeyValuePair{
{
Key: common.MaxLengthKey,
Value: "not_int_aha",
},
},
}
_, err := GetMaxLength(f)
assert.Error(t, err)
})
t.Run("normal case", func(t *testing.T) {
f := &schemapb.FieldSchema{
DataType: schemapb.DataType_VarChar,
TypeParams: []*commonpb.KeyValuePair{
{
Key: common.MaxLengthKey,
Value: "100",
},
},
}
maxLength, err := GetMaxLength(f)
assert.NoError(t, err)
assert.Equal(t, int64(100), maxLength)
})
}