add transaction tests