@@ -9,6 +9,35 @@ async function smartuiSnapshot(page, name, options = {}) {
99
1010 let log = utils . logger ( pkgName ) ;
1111 try {
12+ if ( process . env . UPLOAD_SDK_SCREENSHOT ) {
13+ try {
14+ const screenshotBuffer = await page . screenshot ( { fullPage : true } ) ;
15+ const screenshotBlob = new Blob ( [ screenshotBuffer ] , { type : 'image/png' } ) ;
16+ const form = new FormData ( ) ;
17+ form . append ( 'screenshotName' , name ) ;
18+ form . append ( 'uploadToS3Only' , true ) ;
19+ form . append ( 'buildId' , process . env . SMARTUI_BUILD_ID || '' ) ;
20+ form . append ( 'screenshot' , screenshotBlob , {
21+ filename : `${ name . replace ( / [ ^ a - z 0 - 9 ] / gi, '_' ) } .png` ,
22+ contentType : 'image/png' ,
23+ } ) ;
24+ const uploadUrl = 'https://api.lambdatest.com/visualui/1.0/screenshot' ;
25+ let response ;
26+ try {
27+ response = await fetch ( uploadUrl , {
28+ method : 'POST' ,
29+ headers : {
30+ projectToken : process . env . PROJECT_TOKEN || '' ,
31+ } ,
32+ body : form ,
33+ } ) ;
34+ } catch ( uploadError ) {
35+
36+ }
37+ } catch ( screenshotError ) {
38+
39+ }
40+ }
1241 const resp = await utils . fetchDOMSerializer ( ) ;
1342 await page . evaluate ( resp . body . data . dom ) ;
1443
@@ -27,7 +56,7 @@ async function smartuiSnapshot(page, name, options = {}) {
2756 log . info ( `Snapshot captured: ${ name } ` ) ;
2857 } catch ( error ) {
2958 log . error ( `SmartUI snapshot failed "${ name } "` ) ;
30- log . error ( error ) ;
59+ log . error ( error ) ;
3160 }
3261}
3362
0 commit comments