test: add nested transaction and prepareStmt coexist test case
note: please test in the MySQL environment Change-Id: I0db32adc5f74b0d443e98943d3b182236583b959 Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>
This commit is contained in:
parent
8197c00def
commit
e9a1443475
@ -57,6 +57,19 @@ func TestTransaction(t *testing.T) {
|
|||||||
if err := DB.First(&User{}, "name = ?", "transaction-2").Error; err != nil {
|
if err := DB.First(&User{}, "name = ?", "transaction-2").Error; err != nil {
|
||||||
t.Fatalf("Should be able to find committed record, but got %v", err)
|
t.Fatalf("Should be able to find committed record, but got %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
t.Run("this is test nested transaction and prepareStmt coexist case", func(t *testing.T) {
|
||||||
|
// enable prepare statement
|
||||||
|
tx3 := DB.Session(&gorm.Session{PrepareStmt: true})
|
||||||
|
if err := tx3.Transaction(func(tx4 *gorm.DB) error {
|
||||||
|
// nested transaction
|
||||||
|
return tx4.Transaction(func(tx5 *gorm.DB) error {
|
||||||
|
return tx5.First(&User{}, "name = ?", "transaction-2").Error
|
||||||
|
})
|
||||||
|
}); err != nil {
|
||||||
|
t.Fatalf("prepare statement and nested transcation coexist" + err.Error())
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestCancelTransaction(t *testing.T) {
|
func TestCancelTransaction(t *testing.T) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user