@@ -38,18 +38,34 @@ describe('Transaction', function() {
3838 transaction . begin ( done ) ;
3939 } ) ;
4040
41- it ( 'should rollback' , function ( done ) {
42- transaction . id = 'some-id' ;
43- transaction . makeReq = function ( method , proto , respType , callback ) {
44- assert . equal ( method , 'rollback' ) ;
45- assert . equal (
46- proto . transaction . toBase64 ( ) ,
47- new Buffer ( 'some-id' ) . toString ( 'base64' ) ) ;
48- callback ( ) ;
49- } ;
50- transaction . rollback ( function ( ) {
51- assert . equal ( transaction . isFinalized , true ) ;
52- done ( ) ;
41+ describe ( 'rollback' , function ( ) {
42+ beforeEach ( function ( ) {
43+ transaction . id = 'transaction-id' ;
44+ } ) ;
45+
46+ it ( 'should rollback' , function ( done ) {
47+ transaction . makeReq = function ( method , proto , respType , callback ) {
48+ var base64Id = new Buffer ( transaction . id ) . toString ( 'base64' ) ;
49+ assert . equal ( method , 'rollback' ) ;
50+ assert . equal ( proto . transaction . toBase64 ( ) , base64Id ) ;
51+ callback ( ) ;
52+ } ;
53+ transaction . rollback ( function ( ) {
54+ assert . equal ( transaction . isFinalized , true ) ;
55+ done ( ) ;
56+ } ) ;
57+ } ) ;
58+
59+ it ( 'should mark as `finalized` when rollback errors' , function ( done ) {
60+ var error = new Error ( 'rollback error' ) ;
61+ transaction . makeReq = function ( method , proto , respType , callback ) {
62+ callback ( error ) ;
63+ } ;
64+ transaction . rollback ( function ( err ) {
65+ assert . equal ( err , error ) ;
66+ assert . equal ( transaction . isFinalized , true ) ;
67+ done ( ) ;
68+ } ) ;
5369 } ) ;
5470 } ) ;
5571
0 commit comments