a712ccc38f
Adds StringKSUIDExpr and BinaryKSUIDExpr for use with ExprValues, plus Expr() methods on both types. Removes ExprStringKSUIDs and BinExpr. Co-authored-by: Cursor <cursoragent@cursor.com>
47 lines
1.1 KiB
Go
47 lines
1.1 KiB
Go
package dbx
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestStringKSUIDExpr(t *testing.T) {
|
|
id := NewStringKSUID()
|
|
expr := StringKSUIDExpr(id)
|
|
require.NotNil(t, expr)
|
|
assert.Equal(t, expr, id.Expr())
|
|
|
|
nilExpr := StringKSUIDExpr(NilStringKSUID)
|
|
require.NotNil(t, nilExpr)
|
|
assert.Equal(t, nilExpr, NilStringKSUID.Expr())
|
|
}
|
|
|
|
func TestBinaryKSUIDExpr(t *testing.T) {
|
|
id := NewBinaryKSUID()
|
|
expr := BinaryKSUIDExpr(id)
|
|
require.NotNil(t, expr)
|
|
assert.Equal(t, expr, id.Expr())
|
|
|
|
nilExpr := BinaryKSUIDExpr(NilBinaryKSUID)
|
|
require.NotNil(t, nilExpr)
|
|
assert.Equal(t, nilExpr, NilBinaryKSUID.Expr())
|
|
}
|
|
|
|
func TestExprValues_StringKSUID(t *testing.T) {
|
|
a := NewStringKSUID()
|
|
b := NewStringKSUID()
|
|
exprs := ExprValues([]*StringKSUID{&a, &b}, func(id *StringKSUID) Expression {
|
|
return id.Expr()
|
|
})
|
|
require.Len(t, exprs, 2)
|
|
}
|
|
|
|
func TestExprValues_BinaryKSUID(t *testing.T) {
|
|
a := NewBinaryKSUID()
|
|
exprs := ExprValues([]BinaryKSUID{a}, BinaryKSUIDExpr)
|
|
require.Len(t, exprs, 1)
|
|
assert.NotNil(t, exprs[0])
|
|
}
|