@@ -26,34 +26,40 @@ public static async Task CaptureSnapshot(IWebDriver driver, string name, object?
2626
2727 try
2828 {
29- var resp = await LambdaTest . Sdk . Utils . SmartUI . FetchDomSerializer ( ) ;
29+ var domSerializerResponse = await LambdaTest . Sdk . Utils . SmartUI . FetchDomSerializer ( ) ;
3030
31- var optionsSer = new JsonSerializerOptions
31+ if ( domSerializerResponse == null )
3232 {
33- PropertyNameCaseInsensitive = true
34- } ;
35- var responseObject = JsonSerializer . Deserialize < FetchDomSerializerResponse > ( resp , optionsSer ) ;
33+ throw new Exception ( "Failed to fetch DOM serializer script repsonse." ) ;
34+ }
35+
36+ var domSerializerScript = JsonSerializer . Deserialize < FetchDomSerializerResponse > ( domSerializerResponse , new JsonSerializerOptions { PropertyNameCaseInsensitive = true } ) ;
3637
37- if ( responseObject ? . Data ? . Dom == null )
38+ if ( domSerializerScript ? . Data ? . Dom == null )
3839 {
39- throw new Exception ( "Failed to fetch DOM serializer script." ) ;
40+ throw new Exception ( "Failed to json serialize the DOM serializer script." ) ;
4041 }
4142
42- string script = responseObject . Data . Dom ;
43+ string script = domSerializerScript . Data . Dom ;
4344
4445 ( ( IJavaScriptExecutor ) driver ) . ExecuteScript ( script ) ;
4546
46- var optionsJson = JsonSerializer . Serialize ( options ) ;
47+ var optionsJSON = JsonSerializer . Serialize ( options ) ;
4748 var snapshotScript = @"
48- var options = " + optionsJson + @";
49+ var options = " + optionsJSON + @";
4950 return JSON.stringify({
5051 dom: SmartUIDOM.serialize(options),
5152 url: document.URL
5253 });" ;
5354
54- var domJson = ( string ) ( ( IJavaScriptExecutor ) driver ) . ExecuteScript ( snapshotScript ) ;
55+ var domJSON = ( string ) ( ( IJavaScriptExecutor ) driver ) . ExecuteScript ( snapshotScript ) ;
56+
57+ if ( domJSON == null )
58+ {
59+ throw new Exception ( "Failed to capture DOM object." ) ;
60+ }
5561
56- var domContent = JsonSerializer . Deserialize < DomDeserializerResponse > ( domJson , optionsSer ) ;
62+ var domContent = JsonSerializer . Deserialize < DomDeserializerResponse > ( domJSON , new JsonSerializerOptions { PropertyNameCaseInsensitive = true } ) ;
5763
5864 if ( domContent == null )
5965 {
@@ -73,13 +79,12 @@ public static async Task CaptureSnapshot(IWebDriver driver, string name, object?
7379 Url = domContent . Url
7480 } ;
7581
76- var resJson = await LambdaTest . Sdk . Utils . SmartUI . PostSnapshot ( dom , "lambdatest-selenium-driver" , options ) ;
77- SmartUILogger . LogInformation ( $ "HERE IS RES_JSON: { resJson } ") ;
78- var res = JsonSerializer . Deserialize < ApiResponse > ( resJson ) ;
82+ var apiResponseJSON = await LambdaTest . Sdk . Utils . SmartUI . PostSnapshot ( dom , "Lambdatest.Selenium.Driver" , options ) ;
83+ var apiResponse = JsonSerializer . Deserialize < ApiResponse > ( apiResponseJSON ) ;
7984
80- if ( res ? . Data ? . Warnings != null && res . Data . Warnings . Count > 0 )
85+ if ( apiResponse ? . Data ? . Warnings != null && apiResponse . Data . Warnings . Count > 0 )
8186 {
82- foreach ( var warning in res . Data . Warnings )
87+ foreach ( var warning in apiResponse . Data . Warnings )
8388 {
8489 SmartUILogger . LogWarning ( warning ) ;
8590 }
0 commit comments