Add tests for delete query and transaction rollback
This commit is contained in:
parent
94ae36305a
commit
3e7455ef31
@ -110,3 +110,26 @@ func TestQueryWithPointerStringArgumentsCanSetToNull(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Nil(t, result)
|
require.Nil(t, result)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestDeleteQuery(t *testing.T) {
|
||||||
|
db := openTestDb(t)
|
||||||
|
db.Query("delete from mytable where key = 'foo'").MustExec()
|
||||||
|
|
||||||
|
var count int
|
||||||
|
db.Query("select count(*) from mytable where key = 'foo'").MustScanSingle(&count)
|
||||||
|
require.Equal(t, 0, count, "expected row to be deleted")
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestTransactionRollback(t *testing.T) {
|
||||||
|
db := openTestDb(t)
|
||||||
|
func() {
|
||||||
|
tx := db.MustBegin()
|
||||||
|
defer tx.MustRollback()
|
||||||
|
tx.Query("update mytable set value = 'ipsum' where key = 'foo'").MustExec()
|
||||||
|
// Intentionally not committing the transaction
|
||||||
|
}()
|
||||||
|
|
||||||
|
var value string
|
||||||
|
db.Query("select value from mytable where key = 'foo'").MustScanSingle(&value)
|
||||||
|
require.Equal(t, "bar", value, "expected original value after rollback")
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user