This commit is contained in:
Lunny Xiao 2021-07-11 20:04:17 +08:00
parent f644db16a8
commit 5e196f58c3
2 changed files with 13 additions and 6 deletions

View File

@ -1396,15 +1396,22 @@ func TestNilFromDB(t *testing.T) {
assert.NoError(t, PrepareEngine())
assertSync(t, new(TestTable1))
cnt, err := testEngine.Insert(&TestTable1{
var tt0 = TestTable1{
Field1: &TestFieldType1{
cb: []byte("string"),
},
UpdateTime: time.Now(),
})
}
cnt, err := testEngine.Insert(&tt0)
assert.NoError(t, err)
assert.EqualValues(t, 1, cnt)
var tt1 TestTable1
has, err := testEngine.ID(tt0.Id).Get(&tt1)
assert.NoError(t, err)
assert.True(t, has)
assert.EqualValues(t, "string", string(tt1.Field1.cb))
cnt, err = testEngine.Update(TestTable1{
UpdateTime: time.Now().Add(time.Second),
}, TestTable1{
@ -1430,7 +1437,7 @@ func TestNilFromDB(t *testing.T) {
assert.EqualValues(t, 1, cnt)
var tt2 TestTable1
has, err := testEngine.ID(tt.Id).Get(&tt2)
has, err = testEngine.ID(tt.Id).Get(&tt2)
assert.NoError(t, err)
assert.True(t, has)
assert.Nil(t, tt2.Field1)
@ -1446,9 +1453,9 @@ func TestNilFromDB(t *testing.T) {
assert.EqualValues(t, 1, cnt)
var tt4 TestTable1
has, err = testEngine.ID(tt.Id).Get(&tt4)
has, err = testEngine.ID(tt3.Id).Get(&tt4)
assert.NoError(t, err)
assert.True(t, has)
assert.NotNil(t, tt4.Field1)
assert.Nil(t, tt4.Field1.cb)
assert.NotNil(t, tt4.Field1.cb)
}

View File

@ -768,7 +768,7 @@ func (session *Session) slice2Bean(scanResults []interface{}, fields []string, b
fieldValue, err := session.getField(dataStruct, key, table, idx)
if err != nil {
if !strings.Contains(err.Error(), "is not valid") {
if _, ok := err.(ErrFieldIsNotValid); !ok {
session.engine.logger.Warnf("%v", err)
}
continue