@@ -11,6 +11,7 @@ jest.mock('chromy', () => jest.fn().mockImplementation(() =>
1111 close : jest . fn ( ) ,
1212 screenshotDocument : jest . fn ( ( ) => 'png file' ) ,
1313 screenshotSelector : jest . fn ( ( ) => 'png file' ) ,
14+ screenshot : jest . fn ( ( ) => 'png file' ) ,
1415 } ) ,
1516 ) ) ;
1617
@@ -46,7 +47,8 @@ describe('ChromyRunner', () => {
4647 expect ( result ) . toEqual ( true ) ;
4748 expect ( chromyRunner . currentTestId ) . toEqual ( 1 ) ;
4849 expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
49- expect ( loggerCalls [ 1 ] ) . toEqual ( 'screenshot saved in -> ./screenshots/default.png' ) ;
50+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of whole DOM' ) ;
51+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./screenshots/default.png' ) ;
5052 expect ( chromyRunner . options )
5153 . toEqual ( {
5254 screenshots : './screenshots' ,
@@ -65,7 +67,8 @@ describe('ChromyRunner', () => {
6567 expect ( result ) . toEqual ( true ) ;
6668 expect ( chromyRunner . currentTestId ) . toEqual ( 2 ) ;
6769 expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
68- expect ( loggerCalls [ 1 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
70+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of whole DOM' ) ;
71+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
6972 expect ( chromyRunner . options )
7073 . toEqual ( {
7174 screenshots : './screenshots' ,
@@ -87,8 +90,9 @@ describe('ChromyRunner', () => {
8790 testConfig . steps . pop ( { name : actions . test , value : globalConfig . testReportPath } ) ;
8891 expect ( result ) . toEqual ( true ) ;
8992 expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
90- expect ( loggerCalls [ 1 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
91- expect ( loggerCalls [ 2 ] ) . toEqual ( 'Writting the diff image to disk' ) ;
93+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of whole DOM' ) ;
94+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
95+ expect ( loggerCalls [ 4 ] ) . toEqual ( 'Writting the diff image to disk' ) ;
9296 expect ( writeFileSyncCalls ) . toEqual ( [ './differencify_report/default.png' , 'png file' ] ) ;
9397 } ) ;
9498 it ( 'Step runner: update action' , async ( ) => {
@@ -97,8 +101,74 @@ describe('ChromyRunner', () => {
97101 const result = await chromyRunner . _stepRunner ( chromy , testConfig ) ;
98102 expect ( result ) . toEqual ( true ) ;
99103 expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
100- expect ( loggerCalls [ 1 ] ) . toEqual ( 'screenshot saved in -> ./screenshots/default.png' ) ;
104+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of whole DOM' ) ;
105+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./screenshots/default.png' ) ;
101106 expect ( writeFileSyncCalls ) . toEqual ( [ './screenshots/default.png' , 'png file' ] ) ;
102107 } ) ;
103108 } ) ;
109+ describe ( 'Chromy runner' , ( ) => {
110+ it ( 'Capture: screenshot' , async ( ) => {
111+ const chromy = new Chromy ( ) ;
112+ const newConfig = {
113+ name : 'default' ,
114+ resolution : {
115+ width : 800 ,
116+ height : 600 ,
117+ } ,
118+ steps : [
119+ { name : 'goto' , value : 'www.example.com' } ,
120+ { name : 'capture' } ,
121+ ] ,
122+ } ;
123+ newConfig . type = configTypes . test ;
124+ const result = await chromyRunner . _stepRunner ( chromy , newConfig ) ;
125+ expect ( result ) . toEqual ( true ) ;
126+ expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
127+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of chrome window' ) ;
128+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
129+ expect ( writeFileSyncCalls ) . toEqual ( [ './differencify_report/default.png' , 'png file' ] ) ;
130+ } ) ;
131+ it ( 'Capture: screenshotDocument' , async ( ) => {
132+ const chromy = new Chromy ( ) ;
133+ const newConfig = {
134+ name : 'default' ,
135+ resolution : {
136+ width : 800 ,
137+ height : 600 ,
138+ } ,
139+ steps : [
140+ { name : 'goto' , value : 'www.example.com' } ,
141+ { name : 'capture' , value : 'document' } ,
142+ ] ,
143+ } ;
144+ newConfig . type = configTypes . test ;
145+ const result = await chromyRunner . _stepRunner ( chromy , newConfig ) ;
146+ expect ( result ) . toEqual ( true ) ;
147+ expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
148+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of whole DOM' ) ;
149+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
150+ expect ( writeFileSyncCalls ) . toEqual ( [ './differencify_report/default.png' , 'png file' ] ) ;
151+ } ) ;
152+ it ( 'Capture: screenshotDocument' , async ( ) => {
153+ const chromy = new Chromy ( ) ;
154+ const newConfig = {
155+ name : 'default' ,
156+ resolution : {
157+ width : 800 ,
158+ height : 600 ,
159+ } ,
160+ steps : [
161+ { name : 'goto' , value : 'www.example.com' } ,
162+ { name : 'capture' , value : '#form' } ,
163+ ] ,
164+ } ;
165+ newConfig . type = configTypes . test ;
166+ const result = await chromyRunner . _stepRunner ( chromy , newConfig ) ;
167+ expect ( result ) . toEqual ( true ) ;
168+ expect ( loggerCalls [ 0 ] ) . toEqual ( 'goto -> www.example.com' ) ;
169+ expect ( loggerCalls [ 1 ] ) . toEqual ( 'Capturing screenshot of #form selector' ) ;
170+ expect ( loggerCalls [ 2 ] ) . toEqual ( 'screenshot saved in -> ./differencify_report/default.png' ) ;
171+ expect ( writeFileSyncCalls ) . toEqual ( [ './differencify_report/default.png' , 'png file' ] ) ;
172+ } ) ;
173+ } ) ;
104174} ) ;
0 commit comments