diff --git a/session_pk_test.go b/session_pk_test.go index 7b025acd..da4209b5 100644 --- a/session_pk_test.go +++ b/session_pk_test.go @@ -1169,4 +1169,29 @@ func TestNoPKIdQueryUpdate(t *testing.T) { }) assert.Error(t, err) assert.EqualValues(t, 0, cnt) + + type UnvalidPKTable struct { + ID int `xorm:"id"` + Username string + } + + assertSync(t, new(UnvalidPKTable)) + + cnt, err = testEngine.Insert(&UnvalidPKTable{ + ID: 1, + Username: "test", + }) + assert.NoError(t, err) + assert.EqualValues(t, 1, cnt) + + var res2 UnvalidPKTable + has, err = testEngine.ID(1).Get(&res2) + assert.Error(t, err) + assert.False(t, has) + + cnt, err = testEngine.ID(1).Update(&UnvalidPKTable{ + Username: "test1", + }) + assert.Error(t, err) + assert.EqualValues(t, 0, cnt) }