Add test
This commit is contained in:
parent
5c28f2443b
commit
62f87224a1
|
@ -53,17 +53,21 @@ type StringPK struct {
|
||||||
Name string
|
Name string
|
||||||
}
|
}
|
||||||
|
|
||||||
type ID int64
|
type (
|
||||||
type MyIntPK struct {
|
ID int64
|
||||||
|
MyIntPK struct {
|
||||||
ID ID `xorm:"pk autoincr"`
|
ID ID `xorm:"pk autoincr"`
|
||||||
Name string
|
Name string
|
||||||
}
|
}
|
||||||
|
)
|
||||||
|
|
||||||
type StrID string
|
type (
|
||||||
type MyStringPK struct {
|
StrID string
|
||||||
|
MyStringPK struct {
|
||||||
ID StrID `xorm:"pk notnull"`
|
ID StrID `xorm:"pk notnull"`
|
||||||
Name string
|
Name string
|
||||||
}
|
}
|
||||||
|
)
|
||||||
|
|
||||||
func TestIntId(t *testing.T) {
|
func TestIntId(t *testing.T) {
|
||||||
assert.NoError(t, PrepareEngine())
|
assert.NoError(t, PrepareEngine())
|
||||||
|
@ -187,7 +191,7 @@ func TestUintId(t *testing.T) {
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
assert.EqualValues(t, 1, cnt)
|
assert.EqualValues(t, 1, cnt)
|
||||||
|
|
||||||
var inserts = []UintId{
|
inserts := []UintId{
|
||||||
{Name: "test1"},
|
{Name: "test1"},
|
||||||
{Name: "test2"},
|
{Name: "test2"},
|
||||||
}
|
}
|
||||||
|
@ -321,6 +325,48 @@ func TestUint64Id(t *testing.T) {
|
||||||
assert.EqualValues(t, 1, cnt)
|
assert.EqualValues(t, 1, cnt)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestUnsignedfloat(t *testing.T) {
|
||||||
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
||||||
|
type UnsignedFloat struct {
|
||||||
|
Id int64
|
||||||
|
UnsignedFloat float64 `xorm:"UNSIGNED FLOAT"`
|
||||||
|
}
|
||||||
|
|
||||||
|
err := testEngine.DropTables(&UnsignedFloat{})
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
err = testEngine.CreateTables(&UnsignedFloat{})
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
tables, err := testEngine.DBMetas()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
assert.EqualValues(t, 1, len(tables))
|
||||||
|
cols := tables[0].Columns()
|
||||||
|
assert.EqualValues(t, 2, len(cols))
|
||||||
|
if testEngine.Dialect().URI().DBType == schemas.MYSQL {
|
||||||
|
assert.EqualValues(t, "UNSIGNED FLOAT", cols[1].SQLType.Name)
|
||||||
|
}
|
||||||
|
|
||||||
|
idbean := &UnsignedFloat{UnsignedFloat: 12345678.90123456}
|
||||||
|
cnt, err := testEngine.Insert(idbean)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, 1, cnt)
|
||||||
|
|
||||||
|
bean := new(UnsignedFloat)
|
||||||
|
has, err := testEngine.Get(bean)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.True(t, has)
|
||||||
|
assert.EqualValues(t, bean.Id, idbean.Id)
|
||||||
|
|
||||||
|
beans := make([]UnsignedFloat, 0)
|
||||||
|
err = testEngine.Find(&beans)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, 1, len(beans))
|
||||||
|
assert.EqualValues(t, *bean, beans[0])
|
||||||
|
}
|
||||||
|
|
||||||
func TestStringPK(t *testing.T) {
|
func TestStringPK(t *testing.T) {
|
||||||
assert.NoError(t, PrepareEngine())
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
||||||
|
@ -390,7 +436,7 @@ func TestCompositeKey(t *testing.T) {
|
||||||
assert.True(t, has)
|
assert.True(t, has)
|
||||||
assert.EqualValues(t, compositeKeyVal, compositeKeyVal2)
|
assert.EqualValues(t, compositeKeyVal, compositeKeyVal2)
|
||||||
|
|
||||||
var cps = make([]CompositeKey, 0)
|
cps := make([]CompositeKey, 0)
|
||||||
err = testEngine.Find(&cps)
|
err = testEngine.Find(&cps)
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
assert.EqualValues(t, 1, len(cps))
|
assert.EqualValues(t, 1, len(cps))
|
||||||
|
@ -460,13 +506,15 @@ func TestCompositeKey2(t *testing.T) {
|
||||||
assert.EqualValues(t, 1, cnt)
|
assert.EqualValues(t, 1, cnt)
|
||||||
}
|
}
|
||||||
|
|
||||||
type MyString string
|
type (
|
||||||
type UserPK2 struct {
|
MyString string
|
||||||
|
UserPK2 struct {
|
||||||
UserId MyString `xorm:"varchar(19) not null pk"`
|
UserId MyString `xorm:"varchar(19) not null pk"`
|
||||||
NickName string `xorm:"varchar(19) not null"`
|
NickName string `xorm:"varchar(19) not null"`
|
||||||
GameId uint32 `xorm:"integer pk"`
|
GameId uint32 `xorm:"integer pk"`
|
||||||
Score int32 `xorm:"integer"`
|
Score int32 `xorm:"integer"`
|
||||||
}
|
}
|
||||||
|
)
|
||||||
|
|
||||||
func TestCompositeKey3(t *testing.T) {
|
func TestCompositeKey3(t *testing.T) {
|
||||||
assert.NoError(t, PrepareEngine())
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
Loading…
Reference in New Issue