use TransactionTestCase (thanks @smn)