Closed mihael closed 1 year ago
@mihael, thank you for creating this issue. We will troubleshoot it as soon as we can.
Triage this issue by using labels.
If information is missing, add a helpful comment and then I-issue-template
label.
If the issue is a question, add the I-question
label.
If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted
label.
If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C),
add the applicable G-*
label, and it will provide the correct link and auto-close the
issue.
After troubleshooting the issue, please add the R-awaiting answer
label.
Thank you!
Selenium::WebDriver.logger.level = :debug
so we can see what exactly is getting sent and returned? (I'm not sure if Capybara turns off Selenium logging by default, so you may have to do suggestion 1 to get this to work)Ooh, the new logging documentation just landed, I can link to that now: https://www.selenium.dev/documentation/webdriver/troubleshooting/logging/
Can you maybe point me to an example template project that I can quickly adapt @titusfortner?
I tried here and this stands out:
[:bidi] WebSocket <- {"id"=>7, "error"=>{"code"=>-32000, "message"=>"Can only get response body on requests captured after headers received."},
Full debug output (running example Request 2 https://github.com/mihael/intercepted/blob/main/test/system/swapi_test.rb#L18)
> bin/rails test test/system/swapi_test.rb:18
Running 3 tests in a single process (parallelization threshold is 50)
Run options: --seed 40736
# Running:
Capybara starting Puma...
* Version 5.6.5 , codename: Birdie's Version
* Min threads: 0, max threads: 4
* Listening on http://127.0.0.1:54981
2023-05-15 16:54:13 WARN Selenium [:capabilities] [DEPRECATION] The :capabilities parameter for Selenium::WebDriver::Chrome::Driver is deprecated. Use :options argument with an instance of Selenium::WebDriver::Chrome::Driver instead.
2023-05-15 16:54:13 DEBUG Selenium [:driver_service] Executing Process ["/Users/mihael/.webdrivers/chromedriver", "--port=9517"]
2023-05-15 16:54:13 DEBUG Selenium [:process] Starting process: ["/Users/mihael/.webdrivers/chromedriver", "--port=9517"] with {[:out, :err]=>#<IO:<STDOUT>>, :pgroup=>true}
2023-05-15 16:54:13 DEBUG Selenium [:process] -> pid: 52344
2023-05-15 16:54:13 DEBUG Selenium [:driver_service] polling for socket on ["127.0.0.1", 9517]
Starting ChromeDriver 113.0.5672.63 (0e1a4471d5ae5bf128b1bd8f4d627c8cbd55f70c-refs/branch-heads/5672@{#912}) on port 9517
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
2023-05-15 16:54:13 DEBUG Selenium [:command] -> POST session
2023-05-15 16:54:13 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session | {"capabilities":{"alwaysMatch":{"browserName":"chrome","goog:chromeOptions":{"args":["--headless=new"]}}}}
2023-05-15 16:54:13 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"106"}
2023-05-15 16:54:17 DEBUG Selenium [:header] <<< {"content-length"=>["868"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:17 DEBUG Selenium [:command] <- {"value":{"capabilities":{"acceptInsecureCerts":false,"browserName":"chrome","browserVersion":"113.0.5672.92","chrome":{"chromedriverVersion":"113.0.5672.63 (0e1a4471d5ae5bf128b1bd8f4d627c8cbd55f70c-refs/branch-heads/5672@{#912})","userDataDir":"/var/folders/c2/rqcm87d96cx0j3v5324bd3q40000gn/T/.com.google.Chrome.AI0kLl"},"goog:chromeOptions":{"debuggerAddress":"localhost:55004"},"networkConnectionEnabled":false,"pageLoadStrategy":"normal","platformName":"mac os x","proxy":{},"setWindowRect":true,"strictFileInteractability":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"unhandledPromptBehavior":"dismiss and notify","webauthn:extension:credBlob":true,"webauthn:extension:largeBlob":true,"webauthn:extension:minPinLength":true,"webauthn:extension:prf":true,"webauthn:virtualAuthenticators":true},"sessionId":"5529b5c8332632b101134ec637e9c956"}}
2023-05-15 16:54:17 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/url
2023-05-15 16:54:17 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/url | {"url":"http://127.0.0.1:54981/"}
2023-05-15 16:54:17 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"33"}
2023-05-15 16:54:18 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:18 DEBUG Selenium [:command] <- {"value":null}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Target.getTargets", :params=>{}, :id=>1}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"id"=>1, "result"=>{"targetInfos"=>[{"targetId"=>"7E3C57C2451D4D230718C752DC1F9D03", "type"=>"page", "title"=>"Intercepted", "url"=>"http://127.0.0.1:54981/", "attached"=>true, "canAccessOpener"=>false, "browserContextId"=>"D9168456808514B736A09DCF48EA60CC"}]}}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Target.attachToTarget", :params=>{:targetId=>"7E3C57C2451D4D230718C752DC1F9D03", :flatten=>true}, :id=>2}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"method"=>"Target.attachedToTarget", "params"=>{"sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC", "targetInfo"=>{"targetId"=>"7E3C57C2451D4D230718C752DC1F9D03", "type"=>"page", "title"=>"Intercepted", "url"=>"http://127.0.0.1:54981/", "attached"=>true, "canAccessOpener"=>false, "browserContextId"=>"D9168456808514B736A09DCF48EA60CC"}, "waitingForDebugger"=>false}}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"id"=>2, "result"=>{"sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Network.setCacheDisabled", :params=>{:cacheDisabled=>true}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>3}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"id"=>3, "result"=>{}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Network.enable", :params=>{}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>4}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"id"=>4, "result"=>{}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Fetch.enable", :params=>{:patterns=>[{:requestStage=>"Request"}, {:requestStage=>"Response"}]}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>5}
2023-05-15 16:54:18 DEBUG Selenium [:bidi] WebSocket <- {"id"=>5, "result"=>{}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/elements
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/elements | {"using":"xpath","value":".//input[((((./@type = 'submit') or (./@type = 'reset')) or (./@type = 'image')) or (./@type = 'button'))][(((((./@id = 'Request2') or (./@name = 'Request2')) or (./@value = 'Request2')) or (./@title = 'Request2')) or (./@id = //label[(normalize-space(string(.)) = 'Request2')]/@for))] | .//label[(normalize-space(string(.)) = 'Request2')]//*[((./self::input and ((((./@type = 'submit') or (./@type = 'reset')) or (./@type = 'image')) or (./@type = 'button'))) or ./self::button)] | .//input[(./@type = 'image')][(./@alt = 'Request2')] | .//label[(normalize-space(string(.)) = 'Request2')]//*[((./self::input and ((((./@type = 'submit') or (./@type = 'reset')) or (./@type = 'image')) or (./@type = 'button'))) or ./self::button)] | .//button[(((((((./@id = 'Request2') or (./@name = 'Request2')) or (./@value = 'Request2')) or (./@title = 'Request2')) or (./@id = //label[(normalize-space(string(.)) = 'Request2')]/@for)) or (normalize-space(string(.)) = 'Request2')) or .//img[(./@alt = 'Request2')])] | .//label[(normalize-space(string(.)) = 'Request2')]//*[((./self::input and ((((./@type = 'submit') or (./@type = 'reset')) or (./@type = 'image')) or (./@type = 'button'))) or ./self::button)] | .//input[(./@type = 'image')][(./@alt = 'Request2')] | .//label[(normalize-space(string(.)) = 'Request2')]//*[((./self::input and ((((./@type = 'submit') or (./@type = 'reset')) or (./@type = 'image')) or (./@type = 'button'))) or ./self::button)]"}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"1476"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["96"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_3"}]}
2023-05-15 16:54:19 DEBUG Selenium [:script] Using script for :isDisplayed
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/execute/sync
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/execute/sync | {"script":"/* isDisplayed */return ((function(){function d(t,e,n){function r(t){var e=x(t);if(0<e.height&&0<e.width)return!0;if(\"PATH\"==t.tagName.toUpperCase()&&(0<e.height||0<e.width)){var n=window.getComputedStyle(t)[\"stroke-width\"];return!!n&&0<parseInt(n,10)}return\"hidden\"!=window.getComputedStyle(t).overflow&&Array.prototype.slice.call(t.childNodes).some(function(t){return t.nodeType==Node.TEXT_NODE||t.nodeType==Node.ELEMENT_NODE&&r(t)})}function i(t){return C(t)==T.HIDDEN&&Array.prototype.slice.call(t.childNodes).every(function(t){return t.nodeType!=Node.ELEMENT_NODE||i(t)||!r(t)})}var o=t.tagName.toUpperCase();if(\"BODY\"==o)return!0;if(\"OPTION\"==o||\"OPTGROUP\"==o){var a=c(t,function(t){return\"SELECT\"==t.tagName.toUpperCase()});return!!a&&d(a,!0,n)}var u=s(t);if(u)return!!u.image&&0<u.rect.width&&0<u.rect.height&&d(u.image,e,n);if(\"INPUT\"==o&&\"hidden\"==t.type.toLowerCase())return!1;if(\"NOSCRIPT\"==o)return!1;var l=window.getComputedStyle(t).visibility;return\"collapse\"!=l&&\"hidden\"!=l&&(!!n(t)&&(!(!e&&0==f(t))&&(!!r(t)&&!i(t))))}function E(t){var e=x(t);return{left:e.left,right:e.left+e.width,top:e.top,bottom:e.top+e.height}}function D(t){return t.parentElement}function C(t){function e(t){function e(t){if(t==u)return!0;var e=window.getComputedStyle(t),n=e.display;return 0!=n.indexOf(\"inline\")&&\"contents\"!=n&&(\"absolute\"!=r||\"static\"!=e.position)}var r=window.getComputedStyle(t).position;if(\"fixed\"==r)return i=!0,t==u?null:u;for(var n=D(t);n&&!e(n);)n=D(n);return n}function n(t){var e=t;if(\"visible\"==d)if(t==u&&l)e=l;else if(t==l)return{x:\"visible\",y:\"visible\"};var n=window.getComputedStyle(e),r={x:n[\"overflow-x\"],y:n[\"overflow-y\"]};return t==u&&(r.x=\"visible\"==r.x?\"auto\":r.x,r.y=\"visible\"==r.y?\"auto\":r.y),r}function r(t){return t==u?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop}}for(var i,o=E(t),a=t.ownerDocument,u=a.documentElement,l=a.body,d=window.getComputedStyle(u).overflow,f=e(t);f;f=e(f)){var h=n(f);if(\"visible\"!=h.x||\"visible\"!=h.y){var s=x(f);if(0==s.width||0==s.height)return T.HIDDEN;var p=o.right<s.left,c=o.bottom<s.top;if(p&&\"hidden\"==h.x||c&&\"hidden\"==h.y)return T.HIDDEN;if(p&&\"visible\"!=h.x||c&&\"visible\"!=h.y){var v=r(f),g=o.right<s.left-v.x,w=o.bottom<s.top-v.y;return g&&\"visible\"!=h.x||w&&\"visible\"!=h.x?T.HIDDEN:C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}var N=o.left>=s.left+s.width,m=o.top>=s.top+s.height;if(N&&\"hidden\"==h.x||m&&\"hidden\"==h.y)return T.HIDDEN;if(N&&\"visible\"!=h.x||m&&\"visible\"!=h.y){if(i){var y=r(f);if(o.left>=u.scrollWidth-y.x||o.right>=u.scrollHeight-y.y)return T.HIDDEN}return C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}}}return T.NONE}function o(t){var e=t.document.documentElement;return{width:e.clientWidth,height:e.clientHeight}}function p(t,e,n,r){return{left:t,top:e,width:n,height:r}}function x(t){var e,n=s(t);if(n)return n.rect;if(\"HTML\"==t.tagName.toUpperCase()){t.ownerDocument;var r=o(window);return p(0,0,r.width,r.height)}try{e=t.getBoundingClientRect()}catch(i){return p(0,0,0,0)}return p(e.left,e.top,e.right-e.left,e.bottom-e.top)}function f(t){var e=1,n=window.getComputedStyle(t).opacity;n&&(e=Number(n));var r=D(t);return r&&r.nodeType==Node.ELEMENT_NODE&&(e*=f(r)),e}function h(t){var e=t.shape.toLowerCase(),n=t.coords.split(\",\");if(\"rect\"==e&&4==n.length){var r=n[0],i=n[1];return p(r,i,n[2]-r,n[3]-i)}if(\"circle\"==e&&3==n.length){var o=n[0],a=n[1],u=n[2];return p(o-u,a-u,2*u,2*u)}if(\"poly\"==e&&2<n.length){for(var l=n[0],d=n[1],f=l,h=d,s=2;s+1<n.length;s+=2)l=Math.min(l,n[s]),f=Math.max(f,n[s]),d=Math.min(d,n[s+1]),h=Math.max(h,n[s+1]);return p(l,d,f-l,h-d)}return p(0,0,0,0)}function s(t){var e=t.tagName.toUpperCase(),n=\"MAP\"==e;if(!n&&\"AREA\"!=e)return null;var r=n?t:\"MAP\"==D(t).tagName.toUpperCase()?D(t):null,i=null,o=null;if(r&&r.name&&((i=r.ownerDocument.querySelector(\"*[usemap='#\"+r.name+\"']\"))&&(o=x(i),!n&&\"default\"!=t.shape.toLowerCase()))){var a=h(t),u=Math.min(Math.max(a.left,0),o.width),l=Math.min(Math.max(a.top,0),o.height),d=Math.min(a.width,o.width-u),f=Math.min(a.height,o.height-l);o=p(u+o.left,l+o.top,d,f)}return{image:i,rect:o||p(0,0,0,0)}}function c(t,e){for(t&&(t=D(t));t;){if(e(t))return t;t=D(t)}return null}function r(t){var e=t.parentNode;if(e&&e.shadowRoot&&t.assignedSlot!==undefined)return t.assignedSlot?t.assignedSlot.parentNode:null;if(t.getDestinationInsertionPoints){var n=t.getDestinationInsertionPoints();if(0<n.length)return n[n.length-1]}return e}var T={NONE:\"none\",HIDDEN:\"hidden\",SCROLL:\"scroll\"};return function i(t,e){function n(t){if(\"none\"==window.getComputedStyle(t).display)return!1;var e=r(t);if(\"function\"==typeof ShadowRoot&&e instanceof ShadowRoot){if(e.host.shadowRoot!==e)return!1;e=e.host}return!(!e||e.nodeType!=Node.DOCUMENT_NODE&&e.nodeType!=Node.DOCUMENT_FRAGMENT_NODE)||!(e&&e.tagName&&\"DETAILS\"==e.tagName.toUpperCase()&&!e.open&&\"SUMMARY\"!=t.tagName)&&(e&&n(e))}return d(t,!!e,n)}})()).apply(null, arguments)","args":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_3"}]}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"5090"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":true}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/execute/sync
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/execute/sync | {"script":"return arguments[0].matches(':disabled, select:disabled *')","args":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_3"}]}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"166"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["15"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":false}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/element/5DEED0BCF704B585281ED1E6435FFE2F_element_3/click
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"method"=>"Fetch.requestPaused", "params"=>{"requestId"=>"interception-job-1.0", "request"=>{"url"=>"https://fakerapizzz.it/api/v1/companies?_quantity=5", "method"=>"GET", "headers"=>{"Accept"=>"*/*", "Origin"=>"http://127.0.0.1:54981", "Referer"=>"http://127.0.0.1:54981/", "User-Agent"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36", "sec-ch-ua"=>"\"Google Chrome\";v=\"113\", \"Chromium\";v=\"113\", \"Not-A.Brand\";v=\"24\"", "sec-ch-ua-mobile"=>"?0", "sec-ch-ua-platform"=>"\"macOS\""}, "initialPriority"=>"High", "referrerPolicy"=>"strict-origin-when-cross-origin"}, "frameId"=>"7E3C57C2451D4D230718C752DC1F9D03", "resourceType"=>"XHR", "networkId"=>"52358.22"}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Fetch.continueRequest", :params=>{:requestId=>"interception-job-1.0"}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>6}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"method"=>"Network.requestWillBeSent", "params"=>{"requestId"=>"52358.22", "loaderId"=>"5DEED0BCF704B585281ED1E6435FFE2F", "documentURL"=>"http://127.0.0.1:54981/", "request"=>{"url"=>"https://fakerapizzz.it/api/v1/companies?_quantity=5", "method"=>"GET", "headers"=>{"sec-ch-ua"=>"\"Google Chrome\";v=\"113\", \"Chromium\";v=\"113\", \"Not-A.Brand\";v=\"24\"", "Referer"=>"http://127.0.0.1:54981/", "sec-ch-ua-mobile"=>"?0", "User-Agent"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36", "sec-ch-ua-platform"=>"\"macOS\""}, "mixedContentType"=>"none", "initialPriority"=>"High", "referrerPolicy"=>"strict-origin-when-cross-origin", "isSameSite"=>false}, "timestamp"=>2364197.61952, "wallTime"=>1684162459.322969, "initiator"=>{"type"=>"script", "stack"=>{"callFrames"=>[{"functionName"=>"", "scriptId"=>"11", "url"=>"http://127.0.0.1:54981/assets/application-bffc7c61d63bb168ee3e1ba1adad1b44492e3d816031bba5d3e851fcd6549eda.js", "lineNumber"=>17, "columnNumber"=>4}]}}, "redirectHasExtraInfo"=>false, "type"=>"Fetch", "frameId"=>"7E3C57C2451D4D230718C752DC1F9D03", "hasUserGesture"=>true}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":null}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/elements
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/elements | {"using":"xpath","value":"/html"}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"33"}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"id"=>6, "result"=>{}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"method"=>"Fetch.requestPaused", "params"=>{"requestId"=>"interception-job-1.0", "request"=>{"url"=>"https://fakerapizzz.it/api/v1/companies?_quantity=5", "method"=>"GET", "headers"=>{"Accept"=>"*/*", "Origin"=>"http://127.0.0.1:54981", "Referer"=>"http://127.0.0.1:54981/", "User-Agent"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36", "sec-ch-ua"=>"\"Google Chrome\";v=\"113\", \"Chromium\";v=\"113\", \"Not-A.Brand\";v=\"24\"", "sec-ch-ua-mobile"=>"?0", "sec-ch-ua-platform"=>"\"macOS\""}, "initialPriority"=>"High", "referrerPolicy"=>"strict-origin-when-cross-origin"}, "frameId"=>"7E3C57C2451D4D230718C752DC1F9D03", "resourceType"=>"XHR", "responseErrorReason"=>"NameNotResolved", "networkId"=>"52358.22"}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Fetch.getResponseBody", :params=>{:requestId=>"interception-job-1.0"}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>7}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"id"=>7, "error"=>{"code"=>-32000, "message"=>"Can only get response body on requests captured after headers received."}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["96"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_2"}]}
2023-05-15 16:54:19 DEBUG Selenium [:script] Using script for :isDisplayed
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/execute/sync
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/execute/sync | {"script":"/* isDisplayed */return ((function(){function d(t,e,n){function r(t){var e=x(t);if(0<e.height&&0<e.width)return!0;if(\"PATH\"==t.tagName.toUpperCase()&&(0<e.height||0<e.width)){var n=window.getComputedStyle(t)[\"stroke-width\"];return!!n&&0<parseInt(n,10)}return\"hidden\"!=window.getComputedStyle(t).overflow&&Array.prototype.slice.call(t.childNodes).some(function(t){return t.nodeType==Node.TEXT_NODE||t.nodeType==Node.ELEMENT_NODE&&r(t)})}function i(t){return C(t)==T.HIDDEN&&Array.prototype.slice.call(t.childNodes).every(function(t){return t.nodeType!=Node.ELEMENT_NODE||i(t)||!r(t)})}var o=t.tagName.toUpperCase();if(\"BODY\"==o)return!0;if(\"OPTION\"==o||\"OPTGROUP\"==o){var a=c(t,function(t){return\"SELECT\"==t.tagName.toUpperCase()});return!!a&&d(a,!0,n)}var u=s(t);if(u)return!!u.image&&0<u.rect.width&&0<u.rect.height&&d(u.image,e,n);if(\"INPUT\"==o&&\"hidden\"==t.type.toLowerCase())return!1;if(\"NOSCRIPT\"==o)return!1;var l=window.getComputedStyle(t).visibility;return\"collapse\"!=l&&\"hidden\"!=l&&(!!n(t)&&(!(!e&&0==f(t))&&(!!r(t)&&!i(t))))}function E(t){var e=x(t);return{left:e.left,right:e.left+e.width,top:e.top,bottom:e.top+e.height}}function D(t){return t.parentElement}function C(t){function e(t){function e(t){if(t==u)return!0;var e=window.getComputedStyle(t),n=e.display;return 0!=n.indexOf(\"inline\")&&\"contents\"!=n&&(\"absolute\"!=r||\"static\"!=e.position)}var r=window.getComputedStyle(t).position;if(\"fixed\"==r)return i=!0,t==u?null:u;for(var n=D(t);n&&!e(n);)n=D(n);return n}function n(t){var e=t;if(\"visible\"==d)if(t==u&&l)e=l;else if(t==l)return{x:\"visible\",y:\"visible\"};var n=window.getComputedStyle(e),r={x:n[\"overflow-x\"],y:n[\"overflow-y\"]};return t==u&&(r.x=\"visible\"==r.x?\"auto\":r.x,r.y=\"visible\"==r.y?\"auto\":r.y),r}function r(t){return t==u?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop}}for(var i,o=E(t),a=t.ownerDocument,u=a.documentElement,l=a.body,d=window.getComputedStyle(u).overflow,f=e(t);f;f=e(f)){var h=n(f);if(\"visible\"!=h.x||\"visible\"!=h.y){var s=x(f);if(0==s.width||0==s.height)return T.HIDDEN;var p=o.right<s.left,c=o.bottom<s.top;if(p&&\"hidden\"==h.x||c&&\"hidden\"==h.y)return T.HIDDEN;if(p&&\"visible\"!=h.x||c&&\"visible\"!=h.y){var v=r(f),g=o.right<s.left-v.x,w=o.bottom<s.top-v.y;return g&&\"visible\"!=h.x||w&&\"visible\"!=h.x?T.HIDDEN:C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}var N=o.left>=s.left+s.width,m=o.top>=s.top+s.height;if(N&&\"hidden\"==h.x||m&&\"hidden\"==h.y)return T.HIDDEN;if(N&&\"visible\"!=h.x||m&&\"visible\"!=h.y){if(i){var y=r(f);if(o.left>=u.scrollWidth-y.x||o.right>=u.scrollHeight-y.y)return T.HIDDEN}return C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}}}return T.NONE}function o(t){var e=t.document.documentElement;return{width:e.clientWidth,height:e.clientHeight}}function p(t,e,n,r){return{left:t,top:e,width:n,height:r}}function x(t){var e,n=s(t);if(n)return n.rect;if(\"HTML\"==t.tagName.toUpperCase()){t.ownerDocument;var r=o(window);return p(0,0,r.width,r.height)}try{e=t.getBoundingClientRect()}catch(i){return p(0,0,0,0)}return p(e.left,e.top,e.right-e.left,e.bottom-e.top)}function f(t){var e=1,n=window.getComputedStyle(t).opacity;n&&(e=Number(n));var r=D(t);return r&&r.nodeType==Node.ELEMENT_NODE&&(e*=f(r)),e}function h(t){var e=t.shape.toLowerCase(),n=t.coords.split(\",\");if(\"rect\"==e&&4==n.length){var r=n[0],i=n[1];return p(r,i,n[2]-r,n[3]-i)}if(\"circle\"==e&&3==n.length){var o=n[0],a=n[1],u=n[2];return p(o-u,a-u,2*u,2*u)}if(\"poly\"==e&&2<n.length){for(var l=n[0],d=n[1],f=l,h=d,s=2;s+1<n.length;s+=2)l=Math.min(l,n[s]),f=Math.max(f,n[s]),d=Math.min(d,n[s+1]),h=Math.max(h,n[s+1]);return p(l,d,f-l,h-d)}return p(0,0,0,0)}function s(t){var e=t.tagName.toUpperCase(),n=\"MAP\"==e;if(!n&&\"AREA\"!=e)return null;var r=n?t:\"MAP\"==D(t).tagName.toUpperCase()?D(t):null,i=null,o=null;if(r&&r.name&&((i=r.ownerDocument.querySelector(\"*[usemap='#\"+r.name+\"']\"))&&(o=x(i),!n&&\"default\"!=t.shape.toLowerCase()))){var a=h(t),u=Math.min(Math.max(a.left,0),o.width),l=Math.min(Math.max(a.top,0),o.height),d=Math.min(a.width,o.width-u),f=Math.min(a.height,o.height-l);o=p(u+o.left,l+o.top,d,f)}return{image:i,rect:o||p(0,0,0,0)}}function c(t,e){for(t&&(t=D(t));t;){if(e(t))return t;t=D(t)}return null}function r(t){var e=t.parentNode;if(e&&e.shadowRoot&&t.assignedSlot!==undefined)return t.assignedSlot?t.assignedSlot.parentNode:null;if(t.getDestinationInsertionPoints){var n=t.getDestinationInsertionPoints();if(0<n.length)return n[n.length-1]}return e}var T={NONE:\"none\",HIDDEN:\"hidden\",SCROLL:\"scroll\"};return function i(t,e){function n(t){if(\"none\"==window.getComputedStyle(t).display)return!1;var e=r(t);if(\"function\"==typeof ShadowRoot&&e instanceof ShadowRoot){if(e.host.shadowRoot!==e)return!1;e=e.host}return!(!e||e.nodeType!=Node.DOCUMENT_NODE&&e.nodeType!=Node.DOCUMENT_FRAGMENT_NODE)||!(e&&e.tagName&&\"DETAILS\"==e.tagName.toUpperCase()&&!e.open&&\"SUMMARY\"!=t.tagName)&&(e&&n(e))}return d(t,!!e,n)}})()).apply(null, arguments)","args":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_2"}]}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"5090"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":true}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> GET session/5529b5c8332632b101134ec637e9c956/element/5DEED0BCF704B585281ED1E6435FFE2F_element_2/text
intercepted https://fakerapizzz.it/api/v1/companies?_quantity=5 with: my mocked response
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Fetch.fulfillRequest", :params=>{:requestId=>"interception-job-1.0", :responseHeaders=>[], :body=>"bXkgbW9ja2VkIHJlc3BvbnNl"}, :sessionId=>"79FA47BFE5DA0E99E447233B4090F6BC", :id=>8}
2023-05-15 16:54:19 DEBUG Selenium [:bidi] WebSocket <- {"id"=>8, "error"=>{"code"=>-32602, "message"=>"Invalid parameters", "data"=>"Failed to deserialize params.responseCode - BINDINGS: mandatory field missing at position 95"}, "sessionId"=>"79FA47BFE5DA0E99E447233B4090F6BC"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["45"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":"Request1 Request2\nRequest Kitsch"}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/elements
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/elements | {"using":"xpath","value":"/html"}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"33"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["96"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_2"}]}
2023-05-15 16:54:19 DEBUG Selenium [:script] Using script for :isDisplayed
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/execute/sync
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/execute/sync | {"script":"/* isDisplayed */return ((function(){function d(t,e,n){function r(t){var e=x(t);if(0<e.height&&0<e.width)return!0;if(\"PATH\"==t.tagName.toUpperCase()&&(0<e.height||0<e.width)){var n=window.getComputedStyle(t)[\"stroke-width\"];return!!n&&0<parseInt(n,10)}return\"hidden\"!=window.getComputedStyle(t).overflow&&Array.prototype.slice.call(t.childNodes).some(function(t){return t.nodeType==Node.TEXT_NODE||t.nodeType==Node.ELEMENT_NODE&&r(t)})}function i(t){return C(t)==T.HIDDEN&&Array.prototype.slice.call(t.childNodes).every(function(t){return t.nodeType!=Node.ELEMENT_NODE||i(t)||!r(t)})}var o=t.tagName.toUpperCase();if(\"BODY\"==o)return!0;if(\"OPTION\"==o||\"OPTGROUP\"==o){var a=c(t,function(t){return\"SELECT\"==t.tagName.toUpperCase()});return!!a&&d(a,!0,n)}var u=s(t);if(u)return!!u.image&&0<u.rect.width&&0<u.rect.height&&d(u.image,e,n);if(\"INPUT\"==o&&\"hidden\"==t.type.toLowerCase())return!1;if(\"NOSCRIPT\"==o)return!1;var l=window.getComputedStyle(t).visibility;return\"collapse\"!=l&&\"hidden\"!=l&&(!!n(t)&&(!(!e&&0==f(t))&&(!!r(t)&&!i(t))))}function E(t){var e=x(t);return{left:e.left,right:e.left+e.width,top:e.top,bottom:e.top+e.height}}function D(t){return t.parentElement}function C(t){function e(t){function e(t){if(t==u)return!0;var e=window.getComputedStyle(t),n=e.display;return 0!=n.indexOf(\"inline\")&&\"contents\"!=n&&(\"absolute\"!=r||\"static\"!=e.position)}var r=window.getComputedStyle(t).position;if(\"fixed\"==r)return i=!0,t==u?null:u;for(var n=D(t);n&&!e(n);)n=D(n);return n}function n(t){var e=t;if(\"visible\"==d)if(t==u&&l)e=l;else if(t==l)return{x:\"visible\",y:\"visible\"};var n=window.getComputedStyle(e),r={x:n[\"overflow-x\"],y:n[\"overflow-y\"]};return t==u&&(r.x=\"visible\"==r.x?\"auto\":r.x,r.y=\"visible\"==r.y?\"auto\":r.y),r}function r(t){return t==u?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop}}for(var i,o=E(t),a=t.ownerDocument,u=a.documentElement,l=a.body,d=window.getComputedStyle(u).overflow,f=e(t);f;f=e(f)){var h=n(f);if(\"visible\"!=h.x||\"visible\"!=h.y){var s=x(f);if(0==s.width||0==s.height)return T.HIDDEN;var p=o.right<s.left,c=o.bottom<s.top;if(p&&\"hidden\"==h.x||c&&\"hidden\"==h.y)return T.HIDDEN;if(p&&\"visible\"!=h.x||c&&\"visible\"!=h.y){var v=r(f),g=o.right<s.left-v.x,w=o.bottom<s.top-v.y;return g&&\"visible\"!=h.x||w&&\"visible\"!=h.x?T.HIDDEN:C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}var N=o.left>=s.left+s.width,m=o.top>=s.top+s.height;if(N&&\"hidden\"==h.x||m&&\"hidden\"==h.y)return T.HIDDEN;if(N&&\"visible\"!=h.x||m&&\"visible\"!=h.y){if(i){var y=r(f);if(o.left>=u.scrollWidth-y.x||o.right>=u.scrollHeight-y.y)return T.HIDDEN}return C(f)==T.HIDDEN?T.HIDDEN:T.SCROLL}}}return T.NONE}function o(t){var e=t.document.documentElement;return{width:e.clientWidth,height:e.clientHeight}}function p(t,e,n,r){return{left:t,top:e,width:n,height:r}}function x(t){var e,n=s(t);if(n)return n.rect;if(\"HTML\"==t.tagName.toUpperCase()){t.ownerDocument;var r=o(window);return p(0,0,r.width,r.height)}try{e=t.getBoundingClientRect()}catch(i){return p(0,0,0,0)}return p(e.left,e.top,e.right-e.left,e.bottom-e.top)}function f(t){var e=1,n=window.getComputedStyle(t).opacity;n&&(e=Number(n));var r=D(t);return r&&r.nodeType==Node.ELEMENT_NODE&&(e*=f(r)),e}function h(t){var e=t.shape.toLowerCase(),n=t.coords.split(\",\");if(\"rect\"==e&&4==n.length){var r=n[0],i=n[1];return p(r,i,n[2]-r,n[3]-i)}if(\"circle\"==e&&3==n.length){var o=n[0],a=n[1],u=n[2];return p(o-u,a-u,2*u,2*u)}if(\"poly\"==e&&2<n.length){for(var l=n[0],d=n[1],f=l,h=d,s=2;s+1<n.length;s+=2)l=Math.min(l,n[s]),f=Math.max(f,n[s]),d=Math.min(d,n[s+1]),h=Math.max(h,n[s+1]);return p(l,d,f-l,h-d)}return p(0,0,0,0)}function s(t){var e=t.tagName.toUpperCase(),n=\"MAP\"==e;if(!n&&\"AREA\"!=e)return null;var r=n?t:\"MAP\"==D(t).tagName.toUpperCase()?D(t):null,i=null,o=null;if(r&&r.name&&((i=r.ownerDocument.querySelector(\"*[usemap='#\"+r.name+\"']\"))&&(o=x(i),!n&&\"default\"!=t.shape.toLowerCase()))){var a=h(t),u=Math.min(Math.max(a.left,0),o.width),l=Math.min(Math.max(a.top,0),o.height),d=Math.min(a.width,o.width-u),f=Math.min(a.height,o.height-l);o=p(u+o.left,l+o.top,d,f)}return{image:i,rect:o||p(0,0,0,0)}}function c(t,e){for(t&&(t=D(t));t;){if(e(t))return t;t=D(t)}return null}function r(t){var e=t.parentNode;if(e&&e.shadowRoot&&t.assignedSlot!==undefined)return t.assignedSlot?t.assignedSlot.parentNode:null;if(t.getDestinationInsertionPoints){var n=t.getDestinationInsertionPoints();if(0<n.length)return n[n.length-1]}return e}var T={NONE:\"none\",HIDDEN:\"hidden\",SCROLL:\"scroll\"};return function i(t,e){function n(t){if(\"none\"==window.getComputedStyle(t).display)return!1;var e=r(t);if(\"function\"==typeof ShadowRoot&&e instanceof ShadowRoot){if(e.host.shadowRoot!==e)return!1;e=e.host}return!(!e||e.nodeType!=Node.DOCUMENT_NODE&&e.nodeType!=Node.DOCUMENT_FRAGMENT_NODE)||!(e&&e.tagName&&\"DETAILS\"==e.tagName.toUpperCase()&&!e.open&&\"SUMMARY\"!=t.tagName)&&(e&&n(e))}return d(t,!!e,n)}})()).apply(null, arguments)","args":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_2"}]}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"5090"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":true}
2023-05-15 16:54:19 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/execute/sync
2023-05-15 16:54:19 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/execute/sync | {"script":"return arguments[0].textContent","args":[{"element-6066-11e4-a52e-4f735466cecf":"5DEED0BCF704B585281ED1E6435FFE2F_element_2"}]}
2023-05-15 16:54:19 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"138"}
2023-05-15 16:54:19 DEBUG Selenium [:header] <<< {"content-length"=>["1683"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:19 DEBUG Selenium [:command] <- {"value":".turbo-progress-bar {\n position: fixed;\n display: block;\n top: 0;\n left: 0;\n height: 3px;\n background: #0076ff;\n z-index: 2147483647;\n transition:\n width 300ms ease-out,\n opacity 150ms 150ms ease-in;\n transform: translate3d(0, 0, 0);\n}\n\n Intercepted\n \n \n \n\n \n {\n \"imports\": {\n \"application\": \"/assets/application-bffc7c61d63bb168ee3e1ba1adad1b44492e3d816031bba5d3e851fcd6549eda.js\",\n \"@hotwired/turbo-rails\": \"/assets/turbo.min-f309baafa3ae5ad6ccee3e7362118b87678d792db8e8ab466c4fa284dd3a4700.js\",\n \"@hotwired/stimulus\": \"/assets/stimulus.min-d03cf1dff41d6c5698ec2c5d6a501615a7a33754dbeef8d1edd31c928d17c652.js\",\n \"@hotwired/stimulus-loading\": \"/assets/stimulus-loading-1fc59770fb1654500044afd3f5f6d7d00800e5be36746d55b94a2963a7a228aa.js\",\n \"controllers/application\": \"/assets/controllers/application-368d98631bccbf2349e0d4f8269afb3fe9625118341966de054759d96ea86c7e.js\",\n \"controllers/hello_controller\": \"/assets/controllers/hello_controller-549135e8e7c683a538c3d6d517339ba470fcfb79d62f738a0a089ba41851a554.js\",\n \"controllers\": \"/assets/controllers/index-2db729dddcc5b979110e98de4b6720f83f91a123172e87281d5a58410fc43806.js\"\n }\n}\n\n\n\n\n\nimport \"application\"\n \n\n \n \n function callKitch(e) {\n e.preventDefault()\n console.log('calling kitsch')\n const responseDiv = document.getElementById(\"kitsch-response\");\n fetch('http://kitschmaster.com/')\n .then((response) => response.text())\n .then((text) => (responseDiv.innerHTML = text));\n }\n\n\nRequest1\nRequest2\n\n\nRequest Kitsch\n\n\n\n \n\n"}
#<Thread:0x00007f892fee0e98 /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/common/websocket_connection.rb:121 run> terminated with exception (report_on_exception is true):
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools.rb:49:in `send_cmd': -32602: Invalid parameters: Failed to deserialize params.responseCode - BINDINGS: mandatory field missing at position 95 (Selenium::WebDriver::Error::WebDriverError)
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-devtools-0.113.0/lib/selenium/devtools/v113/fetch.rb:56:in `fulfill_request'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:145:in `mutate_response'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:123:in `intercept_response'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:84:in `block in request_paused'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:162:in `with_cancellable_request'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:81:in `request_paused'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:48:in `block in intercept'
from /Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/common/websocket_connection.rb:131:in `block in callback_thread'
2023-05-15 16:54:19 DEBUG Selenium [:command] -> GET session/5529b5c8332632b101134ec637e9c956/screenshot
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["40968"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":"iVBORw0KGgoAAAANSUhEUgAACWAAAAYQCAYAAADxJ3FGAAABL2lDQ1BTa2lhAAAokX2Qv0vDUBSFP0tB1C6iooNDxi5qW7E/sA62atGxVahuaRqK2NaQRnTv6h/h7Ca4iNDZxUlwEnFxFwTXeNIMKUi9l5v7vfMOee8+iC2hiKeg0/XcaqVk1I9PjMkPJpTDMK2ew/iQ6+c19L6s/OMbF1NNu2epf6k8V4frl03xfCvkq4AbIV8HfOk5nvgmYPewWhbfi5OtEW6MsOW4gf9NXOy0L6zo3iTs7lFNva5apsK5skUbmzVqnHGKKUqxS4E86+rbyg1VmoyUAlmtUpQpkdM3x56UvPbS7AxZjuA9wyP777A18H3/MdIOBnCXhemHSEtuwmwCnp4jLXpjx3TNoRRXxewSfC9olFuY+4SZvtTFYHvMrMafWQ326WKxKspomjTZXwyUTdpToV43AAAgAElEQVR4nOzde1SVZd7G8QsEkQlPBSoQAkricXKo1EzRymRKSzMts9eS0XLSV18by8NkppUkOjXKpGOmg6mhZhl4KFE8kSXIDGBJCqaC4AFRUduKKIf3DxbPsN0bkA2G2PezFms9h/u+9+/ZPPu/a/1uu+Li4mIBAAAAAAAAAAAAAAAAAKrMvrYLAAAAAAAAAAAAAAAAAIC6igAWAAAAAAAAAAAAAAAAANiIABYAAAAAAAAAAAAAAAAA2IgAFgAAAAAAAAAAAAAAAADYiAAWAAAAAAAAAAAAAAAAANiIABYAAAAAAAAAAAAAAAAA2IgAFgAAAAAAAAAAAAAAAADYiAAWAAAAAAAAAAAAAAAAANiIABYAAAAAAAAAAAAAAAAA2IgAFgAAAAAAAAAAAAAAAADYiAAWAAAAAAAAAAAAAAAAANiIABYAAAAAAAAAAAAAAAAA2IgAFgAAAAAAAAAAAAAAAADYiAAWAAAAAAAAAAAAAAAAANiIABYAAAAAAAAAAAAAAAAA2MihphZKTk5WXFycMjMzVVBQUFPL4jbk4OAgLy8vdevWTZ07d67S3NjYWEVHRystLU3Xrl27SRXiduDo6Kg2bdooKChIgYGBtV0OAAAAAAAAAAAAAAC4TdkVFxcXV3eRTZs2KTY2tibqwW9MYGCg+vXrd0Njw8PDFRUVdZMrwu1owIABCg4Oru0yAAAAAAAAAAAAAADAbajaHbCSk5ON8FVQUJA6duyo+vXrV7sw3L6uXr2q/fv3Kzo6WrGxsfL09Ky0E1ZsbKwRvho6dKi6du0qJyenX6Nc1FH5+fmKj4/X6tWrFRUVpdatW9MJCwAAAAAAAAAAAAAA1Dj76i4QFxcnqSR8FRAQQPgKlapfv74CAgIUFBQk6b/vUEWio6MllYSvAgMDCV+hUk5OTgoMDNTQoUMl/fcdAgAAAAAAAAAAAAAAqEnVDmBlZmZKkjp27FjtYvDbUvrOlL5DFUlLS5Mkde3a9abWhNtP6TtT+g4BAAAAAAAAAAAAAADUpGoHsAoKCiSJzleostJ3pvQdqsi1a9ckic5XqLLSd6b0HQIAAAAAAAAAAAAAAKhJ1Q5gAQAAAAAAAAAAAAAAAMBvFQEsAAAAAAAAAAAAAAAAALARASwAAAAAAAAAAAAAAAAAsBEBLAAAAAAAAAAAAAAAAACwkUNtFyBJxcXFWr9+vfLz88sdY2dnpzvuuENNmjSRu7u7fH19f8UKIUk7d+7UwYMH1bdvX7Vq1aq2y7FJXFycjh8/XuEYZ2dnNWrUSK6urvLz85ODwy3xM7mtZWdn6/Dhw0pPT5eDg4NatWolPz8/NWnSpLZLAwAAAAAAAAAAAAAAqNAtkSy5dOmSRowYUaU5/v7+ioiIqLNBoNpWUFCg5cuXKysrS9OnT690/JEjR/T0009Lkry9vevs9/7uu+8qOTn5hse7uLho4cKFevTRR29iVbevgoICRURE6MSJE5oyZYrF/ezsbM2dO1erVq2yOn/SpEkaPXq0GjRocLNLBQAAAAAAAAAAAAAAsEmd3YIwNTVVvXr1UlxcXG2XUicFBQVp4sSJlXaDkqSTJ0/qmWee+RWquvWYTCa9+OKLWrZsWW2XUicNGDBAU6dO1YkTJyzuXbx4Uf369TMLX3l7e8vV1dU4nzNnjkaOHKmioqJfpV4AAAAAAAAAAAAAAICquuUCWF27dtXp06ct/k6ePKl9+/Zp5cqV6tChg6SScMyrr75ayxXXTYmJiZJKtnasSExMjHr16qX09PRfo6xf1aFDh5Senm7xl5iYqK+++kpBQUHG2DfffFPZ2dm1WG3dVNptzNp7Nn36dJ08eVKS9PjjjyspKUnff/+99u3bp82bN6tNmzaSSra+XL58+a9XNAAAAAAAAAAAAAAAQBXccgEsR0dHq38NGjRQy5Yt1a9fP33zzTfy8fGRJKWnp+vYsWO1XPXtJzc3V2PHjtWQIUOUk5NT2+XcFOW9a82bN1eXLl30r3/9S08++aQxfvfu3bVY7e3lypUrWrt2rSSpVatWWrhwoZo1a2bc79Spk8LDw43zyMjIX71GAAAAAAAAAAAAAACAG+FQ2wXYomHDhho6dKhmz54tSfr222/1wgsvWB174cIFpaam6tChQ3Jzc1P79u3l6elZaeeny5cva+/evcrKylKLFi10//33q0mTJsrLy9PZs2clSR4eHrK3L8mwmUwmnT9/Xvb29vLw8LC65vnz52UymSzmllVYWKiMjAz99NNPMplM8vf3V9u2beXs7FxhvdnZ2UpNTVVmZqYaNmyoe+65R76+vmrQoIHZuLNnzyovL884z8nJUVZWlhE8KvX73//eqFWS+vTpo5iYmApruB0NHz5cGzZskCTFxsaWuxVjfn6+Dh8+rIMHD6p+/fry9/eXr6+vHBwq/okVFhZq3759Onr0qJycnPSHP/xBnp6eKiws1KlTpyRJd911l/F/NJlMunDhguzt7eXu7m51zQsXLhj/O3d393Lfs8zMTB04cECXLl3SPffcozZt2lT6nl26dEkHDhxQRkaGpJLwVOvWrdWoUSOzcefOnTN7z86cOaPjx4/L0dFRzZo10759+4x7w4YNU/369S0+y8fHRw888IASEhKUkJCgwsJC1atXr8L6AAAAAAAAAAAAAAAAfm11MoAlyQhBSdLVq1ct7l+8eFFTpkzRqlWrLO516NBBn3zyidq1a2d17UWLFmnWrFlmASRJCg4OVmBgoIKDgyVJGRkZRvBkzZo1ev311yVJe/bsUdu2bS3W/eCDD/TRRx9ZzC0VExOjMWPGWO049eabb2rChAkWgZ68vDyNHz9eX3zxhdVnmTFjhsaOHWvMmzRpktatW2fc3759uzp16iRJOn36tBwdHSXJePaAgAAtXLhQmZmZv8kA1vnz543j/Px8i/uFhYVasmSJ3nnnHYt7Li4umj9/vv74xz9aXfvbb7/V5MmTjTBTqYCAAP3tb3/TI488IklasWKFcfzll1/qr3/9q6SS/52/v7/FuvPnz9fHH38sSTp48KAaNmxodn/79u167bXXdObMGYu5kyZNMntfygoLC1NoaKjVZxk8eLDeeecdNW7cWJI0bdo0RUVFGfd37typLl26SCrp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REREGN9V3759FRoaatYtCyXGjRtntn2lJH322WeaNGmSJGns2LGqX7++nnjiCYu5ZQNY0dHRio6OrvTzMjMz1bZtWyPAV3ZLw+u1aNHihp7hRh07dsw4PnDggFmgrzxl38158+apsLBQ33zzjXFt69atxjaB7dq109tvv62ePXvaVN8vv/yiP//5z9q5c6ekknDaypUra7zjHAAAAAAAAAAAAAAAQE275QJY1jg6OiosLEyXL19WZGSkTCaTnnvuOW3bts3q1m+lBg0adMOf4ezsbBwXFxdXWIutCgsLLa6V3TLw3nvvVevWrStdp02bNsaxj4+PYmNjFR0drS1btmjDhg3G1niStGXLFn3//feKioqyur0hzL3wwgu6evWqpk2bJkl6+eWXtXXrVrVv395sXNn/28MPP1zhe1iqadOmkqSGDRvKZDJZfR9KVWfLvbK1lSr7WZ06dbIaXrzePffcYxw7Oztr8eLFiouL09atWxUdHW3WVevAgQMaOnSo5s6dq2HDhlWp3lOnTul//ud/jFCYu7u7Vq9eLT8/vyqtAwAAAAAAAAAAAAAAUBvqRABLkurVq6d58+Zp7969OnHihH7++WeNHj1aERERZtsFtmnTxujcs3DhQjk5Od3Q+mUDNGW7BV3v+PHjla517do1q9fPnz9vcc3b29s4fvLJJzVx4sRK17+es7OzBg4cqIEDByosLEzJycnavn27lixZopycHJlMJi1btowA1g0aMWKEvvvuO6Pb04svvqht27apcePGxhhfX1/jeNy4ceratesNr9+2bVudPHnSbLvM6506dcrq9bLvelXes5YtWxrHTzzxhMaPH3+j5Rrs7e3VvXt3de/eXW+//bYOHz6s3bt36/PPPze2bvzwww+rFMDKzMzU008/rZMnT0qSOnfurPDwcDVr1qzK9QEAAAAAAAAAAAAAANQG+9ouoCoaN26sBQsWGOebN2/W2rVrzcaU7doTFxdX7lp/+ctfNHbsWM2ZM0cFBQWqV6+e/P39JUk7d+406yJV1u7du61eL9sZ6+LFi1bHJCYmWlwrG+Qp3c7Nmj179uill17Sm2++qT179kiSPv/8c40fP15DhgzRlStXJJV0Trr//vs1adIkbd682Zhf9risirp9/VbZ2dkpJCRELi4ukqSTJ0/q3XffNRtT9v9W3jshScuXL9eYMWM0e/ZsZWVlSZJZZydr74QkY5vC65XtjPXLL79YHbNv3z6La2W3oNy+fXu59cbHx+uVV17RzJkzFR8fL0n697//rbfeekvPP/+82RafrVu31ksvvaTIyEgjSHjy5EmzzlilrL1n58+fNwtfBQUF6YsvviB8BQAAAAAAAAAAAAAA6pQ6FcCSpN69e2v48OHG+cSJE3XmzBnjvE+fPsbx5MmTlZ+fb7HGhg0bFB4eroiICH333XdGqOX555+XJJlMJi1atMhiXmxsbLlhmyZNmhjHERERFveXLVum1NRUi+t33nmn0T0pPj5e69atsxhz5coVTZs2TevXr9fChQuNLkhxcXFasWKFYmJitHLlSot5d9xxh3F8/XZupeGic+fOWX2e37pmzZopJCTEOF+1apW+//574/y+++4zvsMPP/zQaugoKytLU6dOVVRUlMLDw4135KmnnjLGzJ0712IrwnPnzumf//yn1brKvmeff/65xf2VK1da7azVtGlTPfDAA5JKwl1RUVEWY/Lz8/XOO+9o06ZNWrx4sfGeHT9+XP/6178UGxurDz/80GKeg4ODfve73xnnrq6uxnFF71loaKgRvurfv78WL15sthUoAAAAAAAAAAAAAABAXVDnAliSNHPmTCPYYTKZNG3aNONe79691b9/f0lSamqqgoKClJCQoPz8fKWlpSksLEwvvviiMX7cuHHG8ejRo+Xh4SFJmjVrlkJCQpSdna3Lly9r3bp1GjBgQLk1PfTQQ8bxmjVrNGfOHB04cEDJycmaO3euXnvttXLnhoaGGscjR47UvHnzjM/dvHmzhg0bZnRKCggIULdu3SRJgwYNMvtOFixYoLS0NBUXFysjI0Ovv/66cb9s6Ef675aLMTExCg8P14YNG8rd0u63atCgQerdu7dx/vrrrysvL0+SdNddd2nKlCnGvb59++rrr7/WL7/8otOnT+vzzz/Xs88+a9wfMWKE8c4GBATomWeekVQS6gsODtbhw4d17do1JSYmasCAAeV2YCv930vSF198ob///e86ePCgfvjhB82bN0+TJ08u93nKdvEaM2aMFixYoNOnT+vy5cvaunWrRowYYWwl2LlzZ3Xp0kWS9MgjjxjzNm3apJCQECUkJKigoEAXLlzQvHnzdODAAUklXazKBv8aNmwoSdqxY4dWrFihr7/+WteuXVNSUpKWL19u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AGAjAlgAAAAAAAAAAAAAAAAAYCMCWAAAAAAAAAAAAAAAAABgIwJYAAAAAAAAAAAAAAAAAGAjAlgAAAAAAAAAAAAAAAAAYCMCWAAAAAAAAAAAAAAAAABgIwJYAAAAAAAAAAAAAAAAAGAjAlgAAAAAAAAAAAAAAAAAYCMCWAAAAAAAAAAAAAAAAABgIwJYAAAAAAAAAAAAAAAAAGAjAlgAAAAAAAAAAAAAAAAAYCMCWAAAAAAAAAAAAAAAAABgIwJYAAAAAAAAAAAAAAAAAGAjAlgAAAAAAAAAAAAAAAAAYCMCWAAAAAAAAAAAAAAAAABgIwJYAAAAAAAAAAAAAAAA/8+uHQsAAAAADPK3nsPu4ghgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAA8dKGYAAAIABJREFUAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAAJgELAAAAAAAAAABgErAAAAAAAAAAAAAmAQsAAAAAAAAAAGASsAAAAAAAAAAAACYBCwAAAAAAAAAAYBKwAAAAAAAAAAAApti1YwEAAACAQf7Wc9hdHAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABQAAAAAAAAAAMAlYAAAAAAAAAAAAk4AFAAAAAAAAAAAwCVgAAAAAAAAAAACTgAUAAAAAAAAAADAJWAAAAAAAAAAAAJOABRC7diwAAAAAMMjfeg67iyMAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAACmRBFmAAAWY0lEQVQAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAAAAAAAAAAJgELAAAAAAAAAAAgEnAAgAAAAAAAAAAmAQsAAAAAAAAAACAScACAAAAAAAAAACYBCwAAAAAAAAAAIBJwAIAoHbtWAAAAABgkL/1HHYXRwAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAIWAAAAAAAAAADAJGABAAAAAAAAAABMAhYAAAAAAAAAAMAkYAEAAAAAAAAAAEwCFgAAAAAAAAAAwCRgAQAAAAAAAAAATAE3+kdnoYpzNQAAAABJRU5ErkJggg=="}
[Screenshot Image]: /Users/mihael/NadineWest/intercepted/tmp/screenshots/failures_test_Non_existent_URL_intercept.png
2023-05-15 16:54:20 DEBUG Selenium [:command] -> GET session/5529b5c8332632b101134ec637e9c956/window/handles
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["46"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":["7E3C57C2451D4D230718C752DC1F9D03"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/window
2023-05-15 16:54:20 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/window | {"handle":"7E3C57C2451D4D230718C752DC1F9D03"}
2023-05-15 16:54:20 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"45"}
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":null}
2023-05-15 16:54:20 DEBUG Selenium [:command] -> GET session/5529b5c8332632b101134ec637e9c956/window/handles
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["46"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":["7E3C57C2451D4D230718C752DC1F9D03"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/url
2023-05-15 16:54:20 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/url | {"url":"about:blank"}
2023-05-15 16:54:20 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"21"}
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":null}
2023-05-15 16:54:20 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/elements
2023-05-15 16:54:20 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/elements | {"using":"xpath","value":"/html/body/*"}
2023-05-15 16:54:20 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"40"}
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["12"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":[]}
2023-05-15 16:54:20 DEBUG Selenium [:command] -> POST session/5529b5c8332632b101134ec637e9c956/goog/cdp/execute
2023-05-15 16:54:20 DEBUG Selenium [:command] >>> http://127.0.0.1:9517/session/5529b5c8332632b101134ec637e9c956/goog/cdp/execute | {"cmd":"Storage.clearDataForOrigin","params":{"origin":"*","storageTypes":"cookies,local_storage"}}
2023-05-15 16:54:20 DEBUG Selenium [:header] > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.9.1 (ruby macosx)", "Content-Length"=>"99"}
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["12"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":{}}
E
Error:
IndexTest#test_Non_existent_URL_intercept:
Selenium::WebDriver::Error::WebDriverError: -32602: Invalid parameters: Failed to deserialize params.responseCode - BINDINGS: mandatory field missing at position 95
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools.rb:49:in `send_cmd'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-devtools-0.113.0/lib/selenium/devtools/v113/fetch.rb:56:in `fulfill_request'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:145:in `mutate_response'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:123:in `intercept_response'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:84:in `block in request_paused'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:162:in `with_cancellable_request'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:81:in `request_paused'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/devtools/network_interceptor.rb:48:in `block in intercept'
/Users/mihael/.rvm/gems/ruby-3.0.1/gems/selenium-webdriver-4.9.1/lib/selenium/webdriver/common/websocket_connection.rb:131:in `block in callback_thread'
rails test test/system/swapi_test.rb:18
Finished in 7.605741s, 0.1315 runs/s, 0.1315 assertions/s.
1 runs, 1 assertions, 0 failures, 1 errors, 0 skips
2023-05-15 16:54:20 DEBUG Selenium [:command] -> DELETE session/5529b5c8332632b101134ec637e9c956
2023-05-15 16:54:20 DEBUG Selenium [:header] <<< {"content-length"=>["14"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]}
2023-05-15 16:54:20 DEBUG Selenium [:command] <- {"value":null}
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] Polling 20 seconds for exit of 52344
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] -> exit code is 0
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] -> exit code is 0
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] -> exit code is 0
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] -> exit code is 0
2023-05-15 16:54:20 DEBUG Selenium [:process] Checking if 52344 is exited:
2023-05-15 16:54:20 DEBUG Selenium [:process] -> exit code is 0
@p0deje do you see what's going on with this?
I just tried running the reproduction test case, but I don't see any errors raised from the DevTools thread. I get failures in the tests because likely some requests/response are not mocked, but nothing like what's being reported:
Failure:
IndexTest#test_The_Star_Wars_API_request [/Users/p0deje/Development/intercepted/test/system/swapi_test.rb:13]:
expected to find text "my mocked response" in "Request1 Request2\nRequest Kitsch"
The test also hangs, does it make sense @mihael?
Thanks for checking @p0deje
Not sure why it's hanging, it only hangs when running the whole example file. I think we can ignore this.
Can you please try running each example separately, like this:
First example should pass (all good, intercepted a valid and existing URL request, the URL is reachable):
bin/rails test test/system/swapi_test.rb:8
Second one should not pass (demonstrating issue 1: mocking an URL that is not reachable will hit the remote URL and fail):
bin/rails test test/system/swapi_test.rb:18
Third one should not pass (demonstrating issue 2: mocking an URL that is protected by CORS):
bin/rails test test/system/swapi_test.rb:29
Second one should not pass (demonstrating issue 1: mocking an URL that is not reachable will hit the remote URL and fail):
Even though the error is cryptic - it actually makes sense. Since the URL is not reachable and fails on DNS resolution - there is no response code that can be provided for a mock. You should take care of setting a response code manually in this case. The following fix the test:
diff --git a/lib/interceptor.rb b/lib/interceptor.rb
index 90bface..00108de 100644
--- a/lib/interceptor.rb
+++ b/lib/interceptor.rb
@@ -23,6 +23,7 @@ def start_intercepting
# set mocked body if there's an interception for the url and method
continue.call(request) do |response|
puts "intercepted #{url} with: #{interception[:response]}"
+ response.code ||= 200
response.body = interception[:response]
end
elsif allowed_request?(url, method)
Third one should not pass (demonstrating issue 2: mocking an URL that is protected by CORS):
Likewise, since you only change the body and response is missing necessary CORS headers, you need to provide them manually:
diff --git a/lib/interceptor.rb b/lib/interceptor.rb
index 90bface..2aa61b1 100644
--- a/lib/interceptor.rb
+++ b/lib/interceptor.rb
@@ -23,6 +23,7 @@ def start_intercepting
# set mocked body if there's an interception for the url and method
continue.call(request) do |response|
puts "intercepted #{url} with: #{interception[:response]}"
+ response.headers['Access-Control-Allow-Origin'] = '*'
response.body = interception[:response]
end
elsif allowed_request?(url, method)
@p0deje fantastic! Thank you very much for the fix examples!
I'll close this, as it's not a bug and the feature works as expected, it was just my blindness... 👍🏻
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
What happened?
I am not sure this is actually a bug or a lack of a feature, so please bear this in mind.
Problem: Using
page.driver.browser.intercept
to intercept a request to an URL that does not exist, results in JSON parsing error when trying tocontinue
the response:I was following this tutorial: https://gist.github.com/arielj/4f52b6fcdb8035babcd3f6dac8c2dc77
a) I can intercept and mock the response for an URL that exists and is responding. b) It seems there is no way to intercept a fetch to a non-existent URL, or to an URL with CORS disallowing connections. c) It seems an intercepted request always hits the remote server?
I was under the impression I could intercept and mock requests for any
fetch
request originating from JS code in a Rails app. But it seems this is only partially true, since the URLs intercepted are being hit anyway?!How can we reproduce the issue?
Please see this minimal reproduction Rails project: https://github.com/mihael/intercepted
System test examples are here: https://github.com/mihael/intercepted/blob/main/test/system/swapi_test.rb
Run with:
bin/rails test test/system/swapi_test.rb
The setup: https://github.com/mihael/intercepted/blob/main/lib/interceptor.rb https://github.com/mihael/intercepted/blob/main/test/application_system_test_case.rb
Relevant log output
Operating System
macOS
Selenium version
Ruby 4.9.1
What are the browser(s) and version(s) where you see this issue?
Chrome 110
What are the browser driver(s) and version(s) where you see this issue?
Webdrivers chromedriver 113.0.5672.63
Are you using Selenium Grid?
No response