This commit is contained in:
CyJaySong 2023-10-30 09:34:02 +08:00
parent 2255193c57
commit 84c44e90cd
1 changed files with 24 additions and 18 deletions

View File

@ -1292,14 +1292,30 @@ func TestInsertNotDeletedNum(t *testing.T) {
func TestInsertNotDeletedTimeStamp(t *testing.T) { func TestInsertNotDeletedTimeStamp(t *testing.T) {
assert.NoError(t, PrepareEngine()) assert.NoError(t, PrepareEngine())
// UTC time from 1970-01-01 00:00:01.000000 to 2038-01-19 03:14:07.999999 // IN MYSQL DB
//type TestInsertNotDeletedTimeStampStructNotRight struct { // The time range that timestamps can store is from '1970 01 01 00:00:01.000000' to '2038 01 19 03:14:07.999999'
// ID uint64 `xorm:"'ID' pk autoincr"` // PASS notnull timestamp IN MYSQL DB
// DeletedAt time.Time `xorm:"'DELETED_AT' deleted notnull TIMESTAMP"` if testEngine.Dialect().URI().DBType == schemas.MSSQL ||
//} testEngine.Dialect().URI().DBType == schemas.SQLITE ||
//// notnull tag will be ignored testEngine.Dialect().URI().DBType == schemas.POSTGRES {
//err := testEngine.Sync(new(TestInsertNotDeletedTimeStampStructNotRight))
//assert.NoError(t, err) type TestInsertNotDeletedTimeStampStructNotRight struct {
ID uint64 `xorm:"'ID' pk autoincr"`
DeletedAt time.Time `xorm:"'DELETED_AT' deleted notnull TIMESTAMP"`
}
err := testEngine.Sync(new(TestInsertNotDeletedTimeStampStructNotRight))
assert.NoError(t, err)
var v1 TestInsertNotDeletedTimeStampStructNotRight
_, err = testEngine.Insert(&v1)
assert.NoError(t, err)
var v2 TestInsertNotDeletedTimeStampStructNotRight
has, err := testEngine.Get(&v2)
assert.NoError(t, err)
assert.True(t, has)
assert.Equal(t, v2.DeletedAt, time.Unix(0, 0))
}
type TestInsertNotDeletedTimeStampStruct struct { type TestInsertNotDeletedTimeStampStruct struct {
ID uint64 `xorm:"'ID' pk autoincr"` ID uint64 `xorm:"'ID' pk autoincr"`
@ -1308,16 +1324,6 @@ func TestInsertNotDeletedTimeStamp(t *testing.T) {
err := testEngine.Sync(new(TestInsertNotDeletedTimeStampStruct)) err := testEngine.Sync(new(TestInsertNotDeletedTimeStampStruct))
assert.NoError(t, err) assert.NoError(t, err)
//var v1 TestInsertNotDeletedTimeStampStructNotRight
//_, err = testEngine.Insert(&v1)
//assert.NoError(t, err)
//
//var v2 TestInsertNotDeletedTimeStampStructNotRight
//has, err := testEngine.Get(&v2)
//assert.NoError(t, err)
//assert.True(t, has)
//assert.Equal(t, v2.DeletedAt, time.Unix(0, 0))
var v3 TestInsertNotDeletedTimeStampStruct var v3 TestInsertNotDeletedTimeStampStruct
_, err = testEngine.Insert(&v3) _, err = testEngine.Insert(&v3)
assert.NoError(t, err) assert.NoError(t, err)