@@ -10,6 +10,8 @@ const event = require('../../../lib/event')
1010const recorder = require ( '../../../lib/recorder' )
1111const { createTest } = require ( '../../../lib/mocha/test' )
1212const { deserializeSuite } = require ( '../../../lib/mocha/suite' )
13+ const MochawesomeHelper = require ( '../../../lib/helper/Mochawesome' )
14+
1315let screenshotSaved
1416
1517describe ( 'screenshotOnFail' , ( ) => {
@@ -101,5 +103,36 @@ describe('screenshotOnFail', () => {
101103 await recorder . promise ( )
102104 expect ( ! screenshotSaved . called ) . is . ok
103105 } )
106+
107+ it ( 'should have the same unique file name as the mochawesome helper when the uuid is present' , async ( ) => {
108+ screenshotOnFail ( { uniqueScreenshotNames : true } )
109+ const test = createTest ( 'test1' )
110+ test . uid = '1234'
111+
112+ const helper = new MochawesomeHelper ( { uniqueScreenshotNames : true } )
113+ const spy = sinon . spy ( helper , '_addContext' )
114+ helper . _failed ( test )
115+
116+ event . dispatcher . emit ( event . test . failed , test )
117+ await recorder . promise ( )
118+
119+ const screenshotFileName = screenshotSaved . getCall ( 0 ) . args [ 0 ]
120+ expect ( spy . getCall ( 0 ) . args [ 1 ] ) . to . equal ( screenshotFileName )
121+ } )
122+
123+ it ( 'should have the same unique file name as the mochawesome helper when the uuid is not present' , async ( ) => {
124+ screenshotOnFail ( { uniqueScreenshotNames : true } )
125+ const test = createTest ( 'test1' )
126+
127+ const helper = new MochawesomeHelper ( { uniqueScreenshotNames : true } )
128+ const spy = sinon . spy ( helper , '_addContext' )
129+ helper . _failed ( test )
130+
131+ event . dispatcher . emit ( event . test . failed , test )
132+ await recorder . promise ( )
133+
134+ const screenshotFileName = screenshotSaved . getCall ( 0 ) . args [ 0 ]
135+ expect ( spy . getCall ( 0 ) . args [ 1 ] ) . to . equal ( screenshotFileName )
136+ } )
104137 // TODO: write more tests for different options
105138} )
0 commit comments