Skip to content

Instantly share code, notes, and snippets.

@raineorshine
Last active December 6, 2021 15:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save raineorshine/c2d0b687b8c8d67d895937a345f25113 to your computer and use it in GitHub Desktop.
Save raineorshine/c2d0b687b8c8d67d895937a345f25113 to your computer and use it in GitHub Desktop.
Browserstack verbose test output
Run yarn test:ios
yarn run v1.22.11
$ react-scripts test ./src/e2e/iOS --verbose
Setup Test Environment for webdriverio.
Using the currently running app on http://localhost:3000
2021-09-13T19:29:20.250Z INFO webdriver: Initiate new session using the WebDriver protocol
2021-09-13T19:29:20.251Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:29:20.251Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:29:31.491Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:29:31.492Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/url
2021-09-13T19:29:31.492Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:29:33.100Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:29:33.101Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:33.101Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:29:33.225Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:29:33.233Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:29:33.233Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:33.233Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:29:33.414Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:29:33.419Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:29:33.419Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/5001/displayed
2021-09-13T19:29:33.541Z INFO webdriver: RESULT true
2021-09-13T19:29:33.542Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:29:33.542Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:33.542Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:29:33.635Z INFO webdriver: RESULT true
2021-09-13T19:29:33.636Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:29:33.636Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/5001/rect
2021-09-13T19:29:33.816Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:29:33.816Z INFO webdriver: COMMAND getContext()
2021-09-13T19:29:33.816Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:33.940Z INFO webdriver: RESULT WEBVIEW_34992.1
2021-09-13T19:29:33.940Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:29:33.940Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:33.940Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:29:34.000Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:29:34.001Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:34.001Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:29:34.410Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-B088-000000000000',
ELEMENT: '10000000-0000-0000-B088-000000000000'
}
2021-09-13T19:29:34.414Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-B088-000000000000")
2021-09-13T19:29:34.414Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/10000000-0000-0000-B088-000000000000/rect
2021-09-13T19:29:34.650Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:29:34.651Z INFO webdriver: COMMAND switchContext("WEBVIEW_34992.1")
2021-09-13T19:29:34.651Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:34.651Z INFO webdriver: DATA { name: 'WEBVIEW_34992.1' }
2021-09-13T19:29:34.824Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:34.824Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/touch/perform
2021-09-13T19:29:34.824Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:29:35.059Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:29:35.060Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:35.060Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:29:35.335Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:29:35.340Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:29:35.340Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:35.340Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:29:35.457Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:29:35.461Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Enter edit mode "}}")
2021-09-13T19:29:35.462Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:35.462Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Enter edit mode "}}'
}
2021-09-13T19:29:35.463Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:29:35.463Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/window/rect
2021-09-13T19:29:35.643Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:29:35.643Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:35.643Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/touch/perform
2021-09-13T19:29:35.643Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:29:35.654Z INFO webdriver: RESULT {"automation_session":{"name":"Enter edit mode","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:29:36.390Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:36.391Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:36.391Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:29:36.670Z INFO webdriver: RESULT true
2021-09-13T19:29:36.671Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:29:36.671Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:36.671Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:29:36.797Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:29:36.801Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:29:36.801Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/keys
2021-09-13T19:29:36.801Z INFO webdriver: DATA { value: [ 'foo' ] }
2021-09-13T19:29:37.191Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:37.192Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:37.192Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:29:37.311Z INFO webdriver: RESULT true
2021-09-13T19:29:37.312Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:29:37.312Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:37.312Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:29:37.673Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:29:37.678Z INFO webdriver: COMMAND getContext()
2021-09-13T19:29:37.678Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:37.740Z INFO webdriver: RESULT WEBVIEW_34992.1
2021-09-13T19:29:37.740Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:29:37.740Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:37.740Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:29:37.789Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:29:37.789Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:37.789Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:29:38.562Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-B088-000000000000',
ELEMENT: 'A7000000-0000-0000-B088-000000000000'
}
2021-09-13T19:29:38.566Z INFO webdriver: COMMAND elementClick("A7000000-0000-0000-B088-000000000000")
2021-09-13T19:29:38.566Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/A7000000-0000-0000-B088-000000000000/click
2021-09-13T19:29:39.222Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:29:39.222Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/elements
2021-09-13T19:29:39.222Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:29:39.742Z INFO webdriver: RESULT []
2021-09-13T19:29:39.743Z INFO webdriver: COMMAND switchContext("WEBVIEW_34992.1")
2021-09-13T19:29:39.743Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:39.743Z INFO webdriver: DATA { name: 'WEBVIEW_34992.1' }
2021-09-13T19:29:39.885Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:39.885Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:39.885Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:29:39.956Z INFO webdriver: RESULT true
2021-09-13T19:29:39.956Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:29:39.956Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:39.956Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:29:40.052Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:29:40.055Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:29:40.055Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/5006/rect
2021-09-13T19:29:40.157Z INFO webdriver: RESULT { x: 68, y: 79.5, width: 324, height: 26 }
2021-09-13T19:29:40.157Z INFO webdriver: COMMAND getContext()
2021-09-13T19:29:40.157Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:40.212Z INFO webdriver: RESULT WEBVIEW_34992.1
2021-09-13T19:29:40.212Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:29:40.212Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:40.212Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:29:40.292Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:29:40.292Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element
2021-09-13T19:29:40.292Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:29:40.725Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-B088-000000000000',
ELEMENT: '10000000-0000-0000-B088-000000000000'
}
2021-09-13T19:29:40.728Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-B088-000000000000")
2021-09-13T19:29:40.728Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/element/10000000-0000-0000-B088-000000000000/rect
2021-09-13T19:29:40.889Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:29:40.889Z INFO webdriver: COMMAND switchContext("WEBVIEW_34992.1")
2021-09-13T19:29:40.889Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/context
2021-09-13T19:29:40.889Z INFO webdriver: DATA { name: 'WEBVIEW_34992.1' }
2021-09-13T19:29:40.989Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:40.989Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/touch/perform
2021-09-13T19:29:40.989Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:29:41.307Z INFO webdriver: COMMAND isKeyboardShown()
2021-09-13T19:29:41.307Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/appium/device/is_keyboard_shown
2021-09-13T19:29:41.525Z INFO webdriver: RESULT true
2021-09-13T19:29:41.526Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:41.526Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766/execute/sync
2021-09-13T19:29:41.526Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:29:41.677Z INFO webdriver: RESULT foo
2021-09-13T19:29:41.680Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:29:41.680Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/ffd5711ec1d34006f3f2d9dbda6103c0fe9f5766
2021-09-13T19:29:42.205Z INFO webdriver: RESULT
2021-09-13T19:29:42.206Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:29:42.206Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:29:50.229Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:29:50.230Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/url
2021-09-13T19:29:50.230Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:29:51.991Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:29:51.991Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:51.991Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:29:52.184Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:29:52.187Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:29:52.187Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:52.187Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:29:52.592Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:29:52.595Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:29:52.595Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element/5001/displayed
2021-09-13T19:29:52.681Z INFO webdriver: RESULT true
2021-09-13T19:29:52.681Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:29:52.682Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:29:52.682Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:29:53.029Z INFO webdriver: RESULT true
2021-09-13T19:29:53.029Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:29:53.029Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element/5001/rect
2021-09-13T19:29:53.135Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:29:53.136Z INFO webdriver: COMMAND getContext()
2021-09-13T19:29:53.136Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:29:53.215Z INFO webdriver: RESULT WEBVIEW_11698.1
2021-09-13T19:29:53.216Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:29:53.216Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:29:53.216Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:29:53.306Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:29:53.306Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:53.306Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:29:53.740Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-B22D-000000000000',
ELEMENT: '10000000-0000-0000-B22D-000000000000'
}
2021-09-13T19:29:53.744Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-B22D-000000000000")
2021-09-13T19:29:53.744Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element/10000000-0000-0000-B22D-000000000000/rect
2021-09-13T19:29:53.884Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:29:53.884Z INFO webdriver: COMMAND switchContext("WEBVIEW_11698.1")
2021-09-13T19:29:53.884Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:29:53.885Z INFO webdriver: DATA { name: 'WEBVIEW_11698.1' }
2021-09-13T19:29:54.994Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:54.994Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/touch/perform
2021-09-13T19:29:54.994Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:29:55.410Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:29:55.410Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:55.410Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:29:55.583Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:29:55.586Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:29:55.586Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:55.586Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:29:55.673Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:29:55.676Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Preserve Editing: true"}}")
2021-09-13T19:29:55.676Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:29:55.676Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Preserve Editing: true"}}'
}
2021-09-13T19:29:55.677Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:29:55.677Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/window/rect
2021-09-13T19:29:55.838Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:29:55.839Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:55.839Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/touch/perform
2021-09-13T19:29:55.839Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:29:55.861Z INFO webdriver: RESULT {"automation_session":{"name":"Preserve Editing: true","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"729c0a628cbb32b89535566c0642cb95bc394199","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:29:56.656Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:56.657Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:29:56.657Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:29:56.923Z INFO webdriver: RESULT true
2021-09-13T19:29:56.924Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:29:56.924Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:56.924Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:29:57.576Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:29:57.578Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:29:57.579Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/keys
2021-09-13T19:29:57.579Z INFO webdriver: DATA { value: [ 'foo' ] }
2021-09-13T19:29:58.029Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:58.029Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:29:58.029Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:29:58.068Z INFO webdriver: RESULT true
2021-09-13T19:29:58.069Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:29:58.069Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:58.069Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:29:58.272Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:29:58.277Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:29:58.278Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/window/rect
2021-09-13T19:29:58.537Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:29:58.537Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:29:58.538Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/touch/perform
2021-09-13T19:29:58.538Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:29:59.498Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:29:59.498Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:29:59.498Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:29:59.599Z INFO webdriver: RESULT true
2021-09-13T19:29:59.599Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:29:59.599Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:29:59.599Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:29:59.670Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:29:59.674Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:29:59.674Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/keys
2021-09-13T19:29:59.674Z INFO webdriver: DATA { value: [ 'bar' ] }
2021-09-13T19:30:00.277Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:00.277Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:30:00.278Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'bar' ]
}
2021-09-13T19:30:00.391Z INFO webdriver: RESULT true
2021-09-13T19:30:00.391Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "bar")]")
2021-09-13T19:30:00.391Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:30:00.391Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "bar")]'
}
2021-09-13T19:30:00.697Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:30:00.703Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:30:00.703Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:30:00.703Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:30:00.843Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:30:00.849Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:00.849Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element/5008/rect
2021-09-13T19:30:00.910Z INFO webdriver: RESULT { x: 69.84375, y: 79.5, width: 324, height: 26 }
2021-09-13T19:30:00.910Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:00.910Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:30:00.963Z INFO webdriver: RESULT WEBVIEW_11698.1
2021-09-13T19:30:00.963Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:00.963Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:30:00.963Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:00.998Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:00.998Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element
2021-09-13T19:30:00.998Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:01.543Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-B22D-000000000000',
ELEMENT: '10000000-0000-0000-B22D-000000000000'
}
2021-09-13T19:30:01.548Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-B22D-000000000000")
2021-09-13T19:30:01.548Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/element/10000000-0000-0000-B22D-000000000000/rect
2021-09-13T19:30:01.727Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:01.727Z INFO webdriver: COMMAND switchContext("WEBVIEW_11698.1")
2021-09-13T19:30:01.727Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/context
2021-09-13T19:30:01.727Z INFO webdriver: DATA { name: 'WEBVIEW_11698.1' }
2021-09-13T19:30:01.821Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:01.822Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/touch/perform
2021-09-13T19:30:01.822Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:02.170Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:02.171Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:30:02.171Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:02.290Z INFO webdriver: RESULT foo
2021-09-13T19:30:02.290Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:02.291Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199/execute/sync
2021-09-13T19:30:02.291Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:02.420Z INFO webdriver: RESULT foo
2021-09-13T19:30:02.421Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:30:02.421Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/729c0a628cbb32b89535566c0642cb95bc394199
2021-09-13T19:30:03.420Z INFO webdriver: RESULT
2021-09-13T19:30:03.421Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:30:03.421Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:30:13.120Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:30:13.121Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/url
2021-09-13T19:30:13.121Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:30:14.723Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:14.723Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:14.723Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:14.947Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:30:14.952Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:14.952Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:14.952Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:15.074Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:30:15.083Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:30:15.084Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/5001/displayed
2021-09-13T19:30:15.207Z INFO webdriver: RESULT true
2021-09-13T19:30:15.207Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:30:15.209Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:15.209Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:30:15.276Z INFO webdriver: RESULT true
2021-09-13T19:30:15.276Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:15.276Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/5001/rect
2021-09-13T19:30:15.350Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:30:15.350Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:15.351Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:15.415Z INFO webdriver: RESULT WEBVIEW_2379.1
2021-09-13T19:30:15.415Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:15.415Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:15.415Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:15.460Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:15.460Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:15.460Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:16.145Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-4B09-000000000000',
ELEMENT: '10000000-0000-0000-4B09-000000000000'
}
2021-09-13T19:30:16.150Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-4B09-000000000000")
2021-09-13T19:30:16.150Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/10000000-0000-0000-4B09-000000000000/rect
2021-09-13T19:30:16.306Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:16.306Z INFO webdriver: COMMAND switchContext("WEBVIEW_2379.1")
2021-09-13T19:30:16.306Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:16.306Z INFO webdriver: DATA { name: 'WEBVIEW_2379.1' }
2021-09-13T19:30:16.691Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:16.691Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/touch/perform
2021-09-13T19:30:16.691Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:17.159Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:17.159Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:17.159Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:17.259Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
2021-09-13T19:30:17.659Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:17.660Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:17.660Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:17.782Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:30:17.786Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:17.786Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:17.786Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:17.879Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:30:17.884Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Preserve Editing: false"}}")
2021-09-13T19:30:17.885Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:17.885Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Preserve Editing: false"}}'
}
2021-09-13T19:30:17.886Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:30:17.886Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/window/rect
2021-09-13T19:30:18.018Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:30:18.018Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:18.018Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/touch/perform
2021-09-13T19:30:18.018Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:30:18.114Z INFO webdriver: RESULT {"automation_session":{"name":"Preserve Editing: false","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"20ee58bb9674789d7040ba789afd7aa5fc6e3203","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:30:18.600Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:18.601Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:18.601Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:30:19.030Z INFO webdriver: RESULT true
2021-09-13T19:30:19.030Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:30:19.030Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:19.030Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:30:19.125Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:30:19.129Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:30:19.129Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/keys
2021-09-13T19:30:19.129Z INFO webdriver: DATA { value: [ 'foo' ] }
2021-09-13T19:30:19.419Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:19.419Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:19.419Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:30:19.488Z INFO webdriver: RESULT true
2021-09-13T19:30:19.488Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:30:19.488Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:19.489Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:30:19.575Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:30:19.579Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:30:19.579Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/window/rect
2021-09-13T19:30:19.640Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:30:19.640Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:19.640Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/touch/perform
2021-09-13T19:30:19.640Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:30:20.478Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:20.478Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:20.478Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:30:20.589Z INFO webdriver: RESULT true
2021-09-13T19:30:20.589Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:30:20.589Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:20.590Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:30:20.662Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:30:20.666Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:30:20.666Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/keys
2021-09-13T19:30:20.666Z INFO webdriver: DATA { value: [ 'bar' ] }
2021-09-13T19:30:20.968Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:20.968Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:20.968Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'bar' ]
}
2021-09-13T19:30:21.049Z INFO webdriver: RESULT true
2021-09-13T19:30:21.049Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "bar")]")
2021-09-13T19:30:21.049Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:21.049Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "bar")]'
}
2021-09-13T19:30:21.232Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:30:21.237Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:21.237Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:21.276Z INFO webdriver: RESULT WEBVIEW_2379.1
2021-09-13T19:30:21.276Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:21.277Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:21.277Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:21.309Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:30:21.309Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:21.309Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:30:21.889Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-4B09-000000000000',
ELEMENT: 'A7000000-0000-0000-4B09-000000000000'
}
2021-09-13T19:30:21.892Z INFO webdriver: COMMAND elementClick("A7000000-0000-0000-4B09-000000000000")
2021-09-13T19:30:21.892Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/A7000000-0000-0000-4B09-000000000000/click
2021-09-13T19:30:22.348Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:30:22.348Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/elements
2021-09-13T19:30:22.348Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:30:22.796Z INFO webdriver: RESULT [
{
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-4B09-000000000000',
ELEMENT: 'A7000000-0000-0000-4B09-000000000000'
}
]
2021-09-13T19:30:22.849Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:30:22.849Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/elements
2021-09-13T19:30:22.849Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:30:23.085Z INFO webdriver: RESULT []
2021-09-13T19:30:23.086Z INFO webdriver: COMMAND switchContext("WEBVIEW_2379.1")
2021-09-13T19:30:23.087Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:23.087Z INFO webdriver: DATA { name: 'WEBVIEW_2379.1' }
2021-09-13T19:30:23.214Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:23.215Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:23.215Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:30:23.410Z INFO webdriver: RESULT true
2021-09-13T19:30:23.411Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:30:23.411Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:23.411Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:30:23.697Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:30:23.701Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:23.701Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/5008/rect
2021-09-13T19:30:23.791Z INFO webdriver: RESULT { x: 69.84375, y: 79.5, width: 324, height: 26 }
2021-09-13T19:30:23.791Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:23.791Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:23.816Z INFO webdriver: RESULT WEBVIEW_2379.1
2021-09-13T19:30:23.817Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:23.817Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:23.817Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:23.846Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:23.846Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element
2021-09-13T19:30:23.846Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:24.156Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-4B09-000000000000',
ELEMENT: '10000000-0000-0000-4B09-000000000000'
}
2021-09-13T19:30:24.160Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-4B09-000000000000")
2021-09-13T19:30:24.160Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/element/10000000-0000-0000-4B09-000000000000/rect
2021-09-13T19:30:24.274Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:24.274Z INFO webdriver: COMMAND switchContext("WEBVIEW_2379.1")
2021-09-13T19:30:24.274Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/context
2021-09-13T19:30:24.274Z INFO webdriver: DATA { name: 'WEBVIEW_2379.1' }
2021-09-13T19:30:24.352Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:24.353Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/touch/perform
2021-09-13T19:30:24.353Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:24.651Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:24.651Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203/execute/sync
2021-09-13T19:30:24.651Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:24.896Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:30:24.896Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/20ee58bb9674789d7040ba789afd7aa5fc6e3203
2021-09-13T19:30:25.690Z INFO webdriver: RESULT
2021-09-13T19:30:25.690Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:30:25.690Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:30:34.105Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:30:34.105Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/url
2021-09-13T19:30:34.105Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:30:35.780Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:35.780Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:35.780Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:35.913Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:30:35.916Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:35.916Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:35.916Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:36.083Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:30:36.086Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:30:36.086Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5001/displayed
2021-09-13T19:30:36.148Z INFO webdriver: RESULT true
2021-09-13T19:30:36.148Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:30:36.148Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:36.148Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:30:36.308Z INFO webdriver: RESULT true
2021-09-13T19:30:36.308Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:36.308Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5001/rect
2021-09-13T19:30:36.376Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:30:36.377Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:36.377Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:36.407Z INFO webdriver: RESULT WEBVIEW_15020.1
2021-09-13T19:30:36.407Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:36.407Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:36.407Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:36.437Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:36.437Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:36.437Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:36.777Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-AC3A-000000000000',
ELEMENT: '10000000-0000-0000-AC3A-000000000000'
}
2021-09-13T19:30:36.782Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-AC3A-000000000000")
2021-09-13T19:30:36.782Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/10000000-0000-0000-AC3A-000000000000/rect
2021-09-13T19:30:36.912Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:36.912Z INFO webdriver: COMMAND switchContext("WEBVIEW_15020.1")
2021-09-13T19:30:36.912Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:36.912Z INFO webdriver: DATA { name: 'WEBVIEW_15020.1' }
2021-09-13T19:30:37.002Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:37.002Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/touch/perform
2021-09-13T19:30:37.002Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:37.354Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:37.354Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:37.354Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:37.428Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:30:37.434Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:37.434Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:37.434Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:37.529Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:30:37.534Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap hidden root thought"}}")
2021-09-13T19:30:37.534Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:37.534Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap hidden root thought"}}'
}
2021-09-13T19:30:37.535Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:30:37.535Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/window/rect
2021-09-13T19:30:37.588Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:30:37.588Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:37.589Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/touch/perform
2021-09-13T19:30:37.589Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:30:37.772Z INFO webdriver: RESULT {"automation_session":{"name":"Tap hidden root thought","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"3ea59c80f9bd3e24784f6625f854ef9b913aacec","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:30:38.182Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:38.183Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:38.183Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:30:38.328Z INFO webdriver: RESULT true
2021-09-13T19:30:38.328Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:30:38.329Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:38.329Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:30:38.428Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:30:38.433Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:30:38.433Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:38.433Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [ [ '' ], '\n - a\n - b\n - c\n - d' ]
}
2021-09-13T19:30:38.564Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "a")]")
2021-09-13T19:30:38.564Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:38.564Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "a")]'
}
2021-09-13T19:30:38.648Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:30:38.653Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:38.653Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5005/click
2021-09-13T19:30:38.796Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:30:38.797Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:38.797Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:30:38.884Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:30:38.888Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:38.888Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5006/click
2021-09-13T19:30:39.042Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "c")]")
2021-09-13T19:30:39.042Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:39.042Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "c")]'
}
2021-09-13T19:30:39.133Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:30:39.136Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:39.136Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5007/click
2021-09-13T19:30:39.255Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:39.255Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:39.255Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'd' ]
}
2021-09-13T19:30:39.322Z INFO webdriver: RESULT true
2021-09-13T19:30:39.322Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "d")]")
2021-09-13T19:30:39.322Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:39.322Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "d")]'
}
2021-09-13T19:30:39.425Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:30:39.429Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:39.430Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/5008/rect
2021-09-13T19:30:39.499Z INFO webdriver: RESULT { x: 50.799339294433594, y: 177.875, width: 324, height: 26 }
2021-09-13T19:30:39.499Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:39.500Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:39.554Z INFO webdriver: RESULT WEBVIEW_15020.1
2021-09-13T19:30:39.555Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:39.555Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:39.555Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:39.631Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:39.631Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element
2021-09-13T19:30:39.631Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:40.145Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-AC3A-000000000000',
ELEMENT: '10000000-0000-0000-AC3A-000000000000'
}
2021-09-13T19:30:40.148Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-AC3A-000000000000")
2021-09-13T19:30:40.148Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/element/10000000-0000-0000-AC3A-000000000000/rect
2021-09-13T19:30:40.276Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:40.276Z INFO webdriver: COMMAND switchContext("WEBVIEW_15020.1")
2021-09-13T19:30:40.276Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/context
2021-09-13T19:30:40.276Z INFO webdriver: DATA { name: 'WEBVIEW_15020.1' }
2021-09-13T19:30:40.444Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:40.445Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/touch/perform
2021-09-13T19:30:40.445Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:40.792Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:40.793Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:40.793Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:40.873Z INFO webdriver: RESULT b
2021-09-13T19:30:40.873Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:40.873Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec/execute/sync
2021-09-13T19:30:40.873Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:40.933Z INFO webdriver: RESULT b
2021-09-13T19:30:40.935Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:30:40.935Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/3ea59c80f9bd3e24784f6625f854ef9b913aacec
2021-09-13T19:30:41.704Z INFO webdriver: RESULT
2021-09-13T19:30:41.704Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:30:41.704Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:30:49.818Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:30:49.818Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/url
2021-09-13T19:30:49.818Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:30:51.459Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:51.459Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:51.459Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:51.627Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:30:51.630Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:30:51.630Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:51.630Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:30:51.729Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:30:51.734Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:30:51.734Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5001/displayed
2021-09-13T19:30:51.935Z INFO webdriver: RESULT true
2021-09-13T19:30:51.935Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:30:51.935Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:51.935Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:30:52.047Z INFO webdriver: RESULT true
2021-09-13T19:30:52.047Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:52.047Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5001/rect
2021-09-13T19:30:52.194Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:30:52.194Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:52.194Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:52.236Z INFO webdriver: RESULT WEBVIEW_18742.1
2021-09-13T19:30:52.236Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:52.237Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:52.237Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:52.313Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:52.313Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:52.313Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:52.616Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-3649-000000000000',
ELEMENT: '10000000-0000-0000-3649-000000000000'
}
2021-09-13T19:30:52.621Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-3649-000000000000")
2021-09-13T19:30:52.621Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/10000000-0000-0000-3649-000000000000/rect
2021-09-13T19:30:52.793Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:52.794Z INFO webdriver: COMMAND switchContext("WEBVIEW_18742.1")
2021-09-13T19:30:52.794Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:52.794Z INFO webdriver: DATA { name: 'WEBVIEW_18742.1' }
2021-09-13T19:30:52.907Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:52.907Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/touch/perform
2021-09-13T19:30:52.907Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:53.204Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:53.204Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:53.204Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:53.319Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
2021-09-13T19:30:53.704Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:53.705Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:53.705Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:53.820Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:30:53.824Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:30:53.825Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:53.825Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:30:54.080Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:30:54.085Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap hidden uncle"}}")
2021-09-13T19:30:54.085Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:54.086Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap hidden uncle"}}'
}
2021-09-13T19:30:54.086Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:30:54.087Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/window/rect
2021-09-13T19:30:54.132Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:30:54.132Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:54.133Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/touch/perform
2021-09-13T19:30:54.133Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:30:54.283Z INFO webdriver: RESULT {"automation_session":{"name":"Tap hidden uncle","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"f68feeb05c895070aabf1d251f4f0cd3ab13c22d","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:30:54.701Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:54.701Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:54.701Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:30:54.884Z INFO webdriver: RESULT true
2021-09-13T19:30:54.885Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:30:54.885Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:54.885Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:30:54.945Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:30:54.949Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:30:54.950Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:54.950Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [ [ '' ], '\n - a\n - b\n - c\n - d' ]
}
2021-09-13T19:30:55.049Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "a")]")
2021-09-13T19:30:55.049Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:55.049Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "a")]'
}
2021-09-13T19:30:55.255Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:30:55.259Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:55.259Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5005/click
2021-09-13T19:30:55.362Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:30:55.362Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:55.363Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:30:55.444Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:30:55.448Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:55.448Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5006/click
2021-09-13T19:30:55.549Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "c")]")
2021-09-13T19:30:55.549Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:55.549Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "c")]'
}
2021-09-13T19:30:55.628Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:30:55.632Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:30:55.633Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5007/click
2021-09-13T19:30:55.769Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:55.770Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:55.770Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'd' ]
}
2021-09-13T19:30:55.834Z INFO webdriver: RESULT true
2021-09-13T19:30:55.835Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "d")]")
2021-09-13T19:30:55.835Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:55.835Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "d")]'
}
2021-09-13T19:30:55.938Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:30:55.942Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:30:55.942Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/5008/rect
2021-09-13T19:30:56.140Z INFO webdriver: RESULT { x: 70.024658203125, y: 174.28125, width: 302, height: 26 }
2021-09-13T19:30:56.140Z INFO webdriver: COMMAND getContext()
2021-09-13T19:30:56.140Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:56.220Z INFO webdriver: RESULT WEBVIEW_18742.1
2021-09-13T19:30:56.220Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:30:56.220Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:56.220Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:30:56.263Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:30:56.263Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element
2021-09-13T19:30:56.263Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:30:56.733Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-3649-000000000000',
ELEMENT: '10000000-0000-0000-3649-000000000000'
}
2021-09-13T19:30:56.737Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-3649-000000000000")
2021-09-13T19:30:56.737Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/element/10000000-0000-0000-3649-000000000000/rect
2021-09-13T19:30:56.914Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:30:56.914Z INFO webdriver: COMMAND switchContext("WEBVIEW_18742.1")
2021-09-13T19:30:56.914Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/context
2021-09-13T19:30:56.914Z INFO webdriver: DATA { name: 'WEBVIEW_18742.1' }
2021-09-13T19:30:57.011Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:30:57.011Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/touch/perform
2021-09-13T19:30:57.011Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:30:57.364Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:57.364Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:57.364Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:57.432Z INFO webdriver: RESULT d
2021-09-13T19:30:57.432Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:30:57.432Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d/execute/sync
2021-09-13T19:30:57.432Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:30:57.513Z INFO webdriver: RESULT d
2021-09-13T19:30:57.514Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:30:57.514Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/f68feeb05c895070aabf1d251f4f0cd3ab13c22d
2021-09-13T19:30:58.138Z INFO webdriver: RESULT
2021-09-13T19:30:58.139Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:30:58.139Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:31:06.699Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:31:06.699Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/url
2021-09-13T19:31:06.699Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:31:08.390Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:08.390Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:08.390Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:09.637Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:31:09.641Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:09.641Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:09.641Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:09.725Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:31:09.730Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:31:09.730Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/5001/displayed
2021-09-13T19:31:09.841Z INFO webdriver: RESULT true
2021-09-13T19:31:09.841Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:31:09.842Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:09.842Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:31:10.045Z INFO webdriver: RESULT true
2021-09-13T19:31:10.046Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:10.046Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/5001/rect
2021-09-13T19:31:10.265Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:31:10.265Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:10.265Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:10.295Z INFO webdriver: RESULT WEBVIEW_65318.1
2021-09-13T19:31:10.296Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:10.296Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:10.296Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:10.377Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:10.377Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:10.377Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:10.773Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-26FF-000000000000',
ELEMENT: '10000000-0000-0000-26FF-000000000000'
}
2021-09-13T19:31:10.779Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-26FF-000000000000")
2021-09-13T19:31:10.780Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/10000000-0000-0000-26FF-000000000000/rect
2021-09-13T19:31:10.919Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:10.920Z INFO webdriver: COMMAND switchContext("WEBVIEW_65318.1")
2021-09-13T19:31:10.920Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:10.920Z INFO webdriver: DATA { name: 'WEBVIEW_65318.1' }
2021-09-13T19:31:11.002Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:11.003Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/touch/perform
2021-09-13T19:31:11.003Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:11.317Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:11.317Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:11.317Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:11.479Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:31:11.483Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:11.483Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:11.483Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:11.584Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:31:11.589Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap empty content while keyboard up"}}")
2021-09-13T19:31:11.589Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:11.589Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap empty content while keyboard up"}}'
}
2021-09-13T19:31:11.590Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:31:11.590Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/window/rect
2021-09-13T19:31:11.757Z INFO webdriver: RESULT {"automation_session":{"name":"Tap empty content while keyboard up","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"11c7aae0a9f109b40906a43ac9d7a173a791059e","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:31:11.801Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:31:11.801Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:11.801Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/touch/perform
2021-09-13T19:31:11.801Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:31:12.407Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:12.407Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:12.407Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:31:12.566Z INFO webdriver: RESULT true
2021-09-13T19:31:12.566Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:31:12.567Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:12.567Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:31:12.811Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:31:12.816Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:31:12.816Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:12.816Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [ [ '' ], '\n - a\n - b\n - c\n - d' ]
}
2021-09-13T19:31:13.101Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:31:13.101Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:13.101Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:31:13.163Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:31:13.168Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:31:13.168Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/5005/click
2021-09-13T19:31:13.380Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "c")]")
2021-09-13T19:31:13.380Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:13.380Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "c")]'
}
2021-09-13T19:31:13.496Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:31:13.501Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:31:13.501Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/5006/click
2021-09-13T19:31:13.654Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:13.654Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:13.654Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'd' ]
}
2021-09-13T19:31:13.722Z INFO webdriver: RESULT true
2021-09-13T19:31:13.722Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "d")]")
2021-09-13T19:31:13.722Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:13.722Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "d")]'
}
2021-09-13T19:31:13.822Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:31:13.825Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:13.825Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/5007/rect
2021-09-13T19:31:14.007Z INFO webdriver: RESULT { x: 70.05873107910156, y: 174.28125, width: 302, height: 26 }
2021-09-13T19:31:14.007Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:14.007Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:14.275Z INFO webdriver: RESULT WEBVIEW_65318.1
2021-09-13T19:31:14.275Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:14.275Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:14.275Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:14.306Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:14.306Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element
2021-09-13T19:31:14.306Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:15.041Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-26FF-000000000000',
ELEMENT: '10000000-0000-0000-26FF-000000000000'
}
2021-09-13T19:31:15.044Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-26FF-000000000000")
2021-09-13T19:31:15.044Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/element/10000000-0000-0000-26FF-000000000000/rect
2021-09-13T19:31:15.311Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:15.312Z INFO webdriver: COMMAND switchContext("WEBVIEW_65318.1")
2021-09-13T19:31:15.312Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/context
2021-09-13T19:31:15.312Z INFO webdriver: DATA { name: 'WEBVIEW_65318.1' }
2021-09-13T19:31:15.410Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:15.411Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/touch/perform
2021-09-13T19:31:15.411Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:15.855Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:15.855Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:15.855Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:31:15.957Z INFO webdriver: RESULT b
2021-09-13T19:31:15.957Z INFO webdriver: COMMAND isKeyboardShown()
2021-09-13T19:31:15.957Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/appium/device/is_keyboard_shown
2021-09-13T19:31:16.115Z INFO webdriver: RESULT true
2021-09-13T19:31:16.115Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:16.116Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e/execute/sync
2021-09-13T19:31:16.116Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:31:16.323Z INFO webdriver: RESULT b
2021-09-13T19:31:16.324Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:31:16.324Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/11c7aae0a9f109b40906a43ac9d7a173a791059e
2021-09-13T19:31:16.981Z INFO webdriver: RESULT
2021-09-13T19:31:16.981Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:31:16.981Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:31:25.372Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:31:25.372Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/url
2021-09-13T19:31:25.372Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:31:27.003Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:27.003Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:27.003Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:27.185Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:31:27.190Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:27.190Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:27.190Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:27.342Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:31:27.347Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:31:27.348Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/5001/displayed
2021-09-13T19:31:27.421Z INFO webdriver: RESULT true
2021-09-13T19:31:27.422Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:31:27.422Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:27.422Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:31:27.489Z INFO webdriver: RESULT true
2021-09-13T19:31:27.489Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:27.490Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/5001/rect
2021-09-13T19:31:27.577Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:31:27.577Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:27.577Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:27.628Z INFO webdriver: RESULT WEBVIEW_15626.1
2021-09-13T19:31:27.628Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:27.629Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:27.629Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:27.714Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:27.714Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:27.714Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:28.135Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-0A3D-000000000000',
ELEMENT: '10000000-0000-0000-0A3D-000000000000'
}
2021-09-13T19:31:28.140Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-0A3D-000000000000")
2021-09-13T19:31:28.140Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/10000000-0000-0000-0A3D-000000000000/rect
2021-09-13T19:31:28.306Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:28.306Z INFO webdriver: COMMAND switchContext("WEBVIEW_15626.1")
2021-09-13T19:31:28.306Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:28.306Z INFO webdriver: DATA { name: 'WEBVIEW_15626.1' }
2021-09-13T19:31:28.401Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:28.401Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/touch/perform
2021-09-13T19:31:28.401Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:28.741Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:28.742Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:28.742Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:28.877Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:31:28.881Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:28.881Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:28.881Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:28.966Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:31:28.970Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap empty content while keyboard down"}}")
2021-09-13T19:31:28.970Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:28.970Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Tap empty content while keyboard down"}}'
}
2021-09-13T19:31:28.971Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:31:28.971Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/window/rect
2021-09-13T19:31:29.036Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:31:29.037Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:29.037Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/touch/perform
2021-09-13T19:31:29.037Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:31:29.238Z INFO webdriver: RESULT {"automation_session":{"name":"Tap empty content while keyboard down","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"ea0377051d9eb293a4eda270ea56b581980b1063","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:31:29.661Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:29.661Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:29.662Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:31:29.816Z INFO webdriver: RESULT true
2021-09-13T19:31:29.817Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:31:29.817Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:29.817Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:31:29.912Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:31:29.916Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:31:29.916Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:29.916Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [ [ '' ], '\n - a\n - b\n - c\n - d' ]
}
2021-09-13T19:31:30.055Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:31:30.055Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:30.055Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:31:30.162Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:31:30.166Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:31:30.166Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/5005/click
2021-09-13T19:31:30.295Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "c")]")
2021-09-13T19:31:30.295Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:30.295Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "c")]'
}
2021-09-13T19:31:30.386Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:31:30.389Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:31:30.390Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/5006/click
2021-09-13T19:31:30.526Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:30.527Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:30.671Z INFO webdriver: RESULT WEBVIEW_15626.1
2021-09-13T19:31:30.671Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:30.671Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:30.671Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:30.793Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:31:30.793Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:30.793Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:31:31.325Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-0A3D-000000000000',
ELEMENT: 'A7000000-0000-0000-0A3D-000000000000'
}
2021-09-13T19:31:31.329Z INFO webdriver: COMMAND elementClick("A7000000-0000-0000-0A3D-000000000000")
2021-09-13T19:31:31.329Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/A7000000-0000-0000-0A3D-000000000000/click
2021-09-13T19:31:31.886Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:31:31.887Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/elements
2021-09-13T19:31:31.887Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:31:34.664Z INFO webdriver: RESULT []
2021-09-13T19:31:34.665Z INFO webdriver: COMMAND switchContext("WEBVIEW_15626.1")
2021-09-13T19:31:34.665Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:34.665Z INFO webdriver: DATA { name: 'WEBVIEW_15626.1' }
2021-09-13T19:31:34.788Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:34.788Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:34.788Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'd' ]
}
2021-09-13T19:31:34.833Z INFO webdriver: RESULT true
2021-09-13T19:31:34.833Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "d")]")
2021-09-13T19:31:34.833Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:34.833Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "d")]'
}
2021-09-13T19:31:34.931Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:31:34.935Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:34.935Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/5007/rect
2021-09-13T19:31:35.045Z INFO webdriver: RESULT { x: 67.9937515258789, y: 174.28125, width: 302, height: 26 }
2021-09-13T19:31:35.045Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:35.045Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:35.099Z INFO webdriver: RESULT WEBVIEW_15626.1
2021-09-13T19:31:35.100Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:35.100Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:35.100Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:35.136Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:35.136Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element
2021-09-13T19:31:35.136Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:35.647Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-0A3D-000000000000',
ELEMENT: '10000000-0000-0000-0A3D-000000000000'
}
2021-09-13T19:31:35.650Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-0A3D-000000000000")
2021-09-13T19:31:35.651Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/element/10000000-0000-0000-0A3D-000000000000/rect
2021-09-13T19:31:35.829Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:35.829Z INFO webdriver: COMMAND switchContext("WEBVIEW_15626.1")
2021-09-13T19:31:35.829Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/context
2021-09-13T19:31:35.830Z INFO webdriver: DATA { name: 'WEBVIEW_15626.1' }
2021-09-13T19:31:35.931Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:35.931Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/touch/perform
2021-09-13T19:31:35.931Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:36.306Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:36.306Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/execute/sync
2021-09-13T19:31:36.306Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:31:36.364Z INFO webdriver: RESULT b
2021-09-13T19:31:36.364Z INFO webdriver: COMMAND isKeyboardShown()
2021-09-13T19:31:36.364Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063/appium/device/is_keyboard_shown
2021-09-13T19:31:36.526Z INFO webdriver: RESULT false
2021-09-13T19:31:36.527Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:31:36.527Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/ea0377051d9eb293a4eda270ea56b581980b1063
2021-09-13T19:31:37.106Z INFO webdriver: RESULT
2021-09-13T19:31:37.106Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:31:37.106Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:31:45.491Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:31:45.491Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/url
2021-09-13T19:31:45.491Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:31:47.080Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:47.080Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:47.080Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:47.242Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:31:47.246Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:31:47.247Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:47.247Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:31:47.337Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:31:47.342Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:31:47.342Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/5001/displayed
2021-09-13T19:31:47.439Z INFO webdriver: RESULT true
2021-09-13T19:31:47.439Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:31:47.439Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:47.439Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:31:47.497Z INFO webdriver: RESULT true
2021-09-13T19:31:47.497Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:47.497Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/5001/rect
2021-09-13T19:31:47.593Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:31:47.593Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:47.593Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:47.627Z INFO webdriver: RESULT WEBVIEW_6854.1
2021-09-13T19:31:47.627Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:47.627Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:47.627Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:47.659Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:47.659Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:47.659Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:48.078Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-C61A-000000000000',
ELEMENT: '10000000-0000-0000-C61A-000000000000'
}
2021-09-13T19:31:48.083Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-C61A-000000000000")
2021-09-13T19:31:48.083Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/10000000-0000-0000-C61A-000000000000/rect
2021-09-13T19:31:48.244Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:48.244Z INFO webdriver: COMMAND switchContext("WEBVIEW_6854.1")
2021-09-13T19:31:48.244Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:48.244Z INFO webdriver: DATA { name: 'WEBVIEW_6854.1' }
2021-09-13T19:31:48.363Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:48.363Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/touch/perform
2021-09-13T19:31:48.363Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:48.726Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:48.727Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:48.727Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:48.846Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
2021-09-13T19:31:49.226Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:49.226Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:49.227Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:49.304Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:31:49.309Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:31:49.309Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:49.309Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:31:49.376Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:31:49.381Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Swipe over cursor"}}")
2021-09-13T19:31:49.381Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:49.381Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Swipe over cursor"}}'
}
2021-09-13T19:31:49.382Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:31:49.383Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/window/rect
2021-09-13T19:31:49.428Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:31:49.429Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:49.429Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/touch/perform
2021-09-13T19:31:49.429Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:31:49.581Z INFO webdriver: RESULT {"automation_session":{"name":"Swipe over cursor","duration":null,"os":"ios","os_version":"13.2","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"510e9fc9e0a653b5ecd838c12fa38d61f0fed01b","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:31:50.059Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:50.059Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:50.059Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:31:50.526Z INFO webdriver: RESULT true
2021-09-13T19:31:50.526Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:31:50.526Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:50.526Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:31:50.665Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:31:50.668Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:31:50.669Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/keys
2021-09-13T19:31:50.669Z INFO webdriver: DATA { value: [ 'foo' ] }
2021-09-13T19:31:51.044Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:51.044Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:51.044Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:31:51.100Z INFO webdriver: RESULT true
2021-09-13T19:31:51.100Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:31:51.100Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:51.100Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:31:51.177Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:31:51.181Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:51.182Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:51.339Z INFO webdriver: RESULT WEBVIEW_6854.1
2021-09-13T19:31:51.340Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:51.340Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:51.340Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:51.385Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:31:51.386Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:51.386Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:31:51.925Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-C61A-000000000000',
ELEMENT: 'A7000000-0000-0000-C61A-000000000000'
}
2021-09-13T19:31:51.929Z INFO webdriver: COMMAND elementClick("A7000000-0000-0000-C61A-000000000000")
2021-09-13T19:31:51.930Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/A7000000-0000-0000-C61A-000000000000/click
2021-09-13T19:31:52.609Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:31:52.609Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/elements
2021-09-13T19:31:52.609Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:31:53.157Z INFO webdriver: RESULT []
2021-09-13T19:31:53.158Z INFO webdriver: COMMAND switchContext("WEBVIEW_6854.1")
2021-09-13T19:31:53.158Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:53.158Z INFO webdriver: DATA { name: 'WEBVIEW_6854.1' }
2021-09-13T19:31:53.265Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:53.265Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:53.265Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:31:53.325Z INFO webdriver: RESULT true
2021-09-13T19:31:53.325Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:31:53.325Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:53.325Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:31:53.685Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:31:53.688Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:53.688Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:53.717Z INFO webdriver: RESULT WEBVIEW_6854.1
2021-09-13T19:31:53.718Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:53.718Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:53.718Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:53.750Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="em"]")
2021-09-13T19:31:53.751Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:53.751Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeOther[@name="em"]' }
2021-09-13T19:31:54.110Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '05000000-0000-0000-CD1A-000000000000',
ELEMENT: '05000000-0000-0000-CD1A-000000000000'
}
2021-09-13T19:31:54.113Z INFO webdriver: COMMAND getElementRect("05000000-0000-0000-CD1A-000000000000")
2021-09-13T19:31:54.114Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/05000000-0000-0000-CD1A-000000000000/rect
2021-09-13T19:31:54.246Z INFO webdriver: RESULT { y: 94, x: 0, width: 414, height: 967 }
2021-09-13T19:31:54.246Z INFO webdriver: COMMAND switchContext("WEBVIEW_6854.1")
2021-09-13T19:31:54.247Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:54.247Z INFO webdriver: DATA { name: 'WEBVIEW_6854.1' }
2021-09-13T19:31:54.340Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:54.340Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/5006/rect
2021-09-13T19:31:54.458Z INFO webdriver: RESULT { x: 68, y: 79.5, width: 324, height: 26 }
2021-09-13T19:31:54.458Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:54.458Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/touch/perform
2021-09-13T19:31:54.458Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:31:55.000Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:31:55.000Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/5006/rect
2021-09-13T19:31:55.090Z INFO webdriver: RESULT { x: 68, y: 79.5, width: 324, height: 26 }
2021-09-13T19:31:55.090Z INFO webdriver: COMMAND getContext()
2021-09-13T19:31:55.090Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:55.139Z INFO webdriver: RESULT WEBVIEW_6854.1
2021-09-13T19:31:55.140Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:31:55.140Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:55.140Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:31:55.177Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:31:55.177Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element
2021-09-13T19:31:55.177Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:31:55.546Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-C61A-000000000000',
ELEMENT: '10000000-0000-0000-C61A-000000000000'
}
2021-09-13T19:31:55.549Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-C61A-000000000000")
2021-09-13T19:31:55.549Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/element/10000000-0000-0000-C61A-000000000000/rect
2021-09-13T19:31:55.667Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:31:55.667Z INFO webdriver: COMMAND switchContext("WEBVIEW_6854.1")
2021-09-13T19:31:55.667Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/context
2021-09-13T19:31:55.667Z INFO webdriver: DATA { name: 'WEBVIEW_6854.1' }
2021-09-13T19:31:55.952Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:31:55.952Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/touch/perform
2021-09-13T19:31:55.952Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:31:56.291Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:56.291Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:56.291Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:31:56.341Z INFO webdriver: RESULT foo
2021-09-13T19:31:56.341Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:31:56.342Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b/execute/sync
2021-09-13T19:31:56.342Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:31:56.388Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:31:56.388Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/510e9fc9e0a653b5ecd838c12fa38d61f0fed01b
2021-09-13T19:31:57.000Z INFO webdriver: RESULT
2021-09-13T19:31:57.000Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:31:57.000Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:32:05.267Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:32:05.267Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/url
2021-09-13T19:32:05.267Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:32:06.927Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:06.927Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:06.927Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:07.101Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:32:07.104Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:07.105Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:07.105Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:07.237Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:32:07.240Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:32:07.241Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5001/displayed
2021-09-13T19:32:07.306Z INFO webdriver: RESULT true
2021-09-13T19:32:07.306Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:32:07.307Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:07.307Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:32:07.368Z INFO webdriver: RESULT true
2021-09-13T19:32:07.368Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:32:07.369Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5001/rect
2021-09-13T19:32:07.491Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:32:07.491Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:07.491Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:07.710Z INFO webdriver: RESULT WEBVIEW_29832.1
2021-09-13T19:32:07.710Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:07.710Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:07.710Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:07.772Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:32:07.772Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:07.772Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:32:08.209Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-8874-000000000000',
ELEMENT: '10000000-0000-0000-8874-000000000000'
}
2021-09-13T19:32:08.214Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-8874-000000000000")
2021-09-13T19:32:08.215Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/10000000-0000-0000-8874-000000000000/rect
2021-09-13T19:32:08.381Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:32:08.381Z INFO webdriver: COMMAND switchContext("WEBVIEW_29832.1")
2021-09-13T19:32:08.381Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:08.381Z INFO webdriver: DATA { name: 'WEBVIEW_29832.1' }
2021-09-13T19:32:08.546Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:08.546Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/touch/perform
2021-09-13T19:32:08.546Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:32:08.867Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:08.867Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:08.867Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:08.999Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
2021-09-13T19:32:09.368Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:09.368Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:09.368Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:09.488Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:32:09.494Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:09.494Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:09.494Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:09.586Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:32:09.590Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Swipe over hidden thought"}}")
2021-09-13T19:32:09.590Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:09.590Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Swipe over hidden thought"}}'
}
2021-09-13T19:32:09.591Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:32:09.591Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/window/rect
2021-09-13T19:32:09.641Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:32:09.641Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:09.641Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/touch/perform
2021-09-13T19:32:09.641Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:09.801Z INFO webdriver: RESULT {"automation_session":{"name":"Swipe over hidden thought","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"95a9e4eb7d38db6066cf701035229277a656464e","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:32:10.308Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:10.309Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:10.309Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:32:10.466Z INFO webdriver: RESULT true
2021-09-13T19:32:10.466Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:32:10.466Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:10.467Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:32:10.553Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:32:10.558Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:32:10.558Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:10.558Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [
[ '' ],
'\n' +
' - a\n' +
' - x\n' +
' - y\n' +
' - b\n' +
' - c\n' +
' - d\n' +
' - e\n' +
' - f\n' +
' - g\n' +
' - h\n' +
' - i'
]
}
2021-09-13T19:32:11.288Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:11.288Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:11.288Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'i' ]
}
2021-09-13T19:32:11.336Z INFO webdriver: RESULT true
2021-09-13T19:32:11.336Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "i")]")
2021-09-13T19:32:11.336Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:11.336Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "i")]'
}
2021-09-13T19:32:11.464Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:32:11.468Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "a")]")
2021-09-13T19:32:11.468Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:11.468Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "a")]'
}
2021-09-13T19:32:11.542Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:32:11.545Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:32:11.546Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5006/click
2021-09-13T19:32:11.721Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "x")]")
2021-09-13T19:32:11.721Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:11.721Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "x")]'
}
2021-09-13T19:32:11.800Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:32:11.805Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:32:11.806Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5007/click
2021-09-13T19:32:11.939Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "y")]")
2021-09-13T19:32:11.939Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:11.939Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "y")]'
}
2021-09-13T19:32:12.000Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:32:12.004Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:32:12.004Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5008/click
2021-09-13T19:32:12.186Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:12.186Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:12.186Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'y' ]
}
2021-09-13T19:32:12.231Z INFO webdriver: RESULT true
2021-09-13T19:32:12.231Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "y")]")
2021-09-13T19:32:12.231Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:12.231Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "y")]'
}
2021-09-13T19:32:12.512Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5009', ELEMENT: '5009' }
2021-09-13T19:32:12.516Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:12.516Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:12.625Z INFO webdriver: RESULT WEBVIEW_29832.1
2021-09-13T19:32:12.625Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:12.625Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:12.625Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:12.689Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="em"]")
2021-09-13T19:32:12.689Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:12.689Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeOther[@name="em"]' }
2021-09-13T19:32:13.379Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '05000000-0000-0000-8C74-000000000000',
ELEMENT: '05000000-0000-0000-8C74-000000000000'
}
2021-09-13T19:32:13.382Z INFO webdriver: COMMAND getElementRect("05000000-0000-0000-8C74-000000000000")
2021-09-13T19:32:13.382Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/05000000-0000-0000-8C74-000000000000/rect
2021-09-13T19:32:13.660Z INFO webdriver: RESULT { y: 94, x: 0, width: 414, height: 967 }
2021-09-13T19:32:13.660Z INFO webdriver: COMMAND switchContext("WEBVIEW_29832.1")
2021-09-13T19:32:13.661Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/context
2021-09-13T19:32:13.661Z INFO webdriver: DATA { name: 'WEBVIEW_29832.1' }
2021-09-13T19:32:13.770Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:32:13.770Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element/5009/rect
2021-09-13T19:32:13.874Z INFO webdriver: RESULT { x: 89.5875015258789, y: 141.5, width: 280, height: 26 }
2021-09-13T19:32:13.875Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:13.875Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/touch/perform
2021-09-13T19:32:13.875Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:14.600Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:14.600Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:14.600Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:32:14.735Z INFO webdriver: RESULT true
2021-09-13T19:32:14.735Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:32:14.735Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:14.735Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:32:14.798Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5010', ELEMENT: '5010' }
2021-09-13T19:32:14.801Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:32:14.802Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/keys
2021-09-13T19:32:14.802Z INFO webdriver: DATA { value: [ 'this-is-new-thought' ] }
2021-09-13T19:32:15.476Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:15.476Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:15.476Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'this-is-new-thought' ]
}
2021-09-13T19:32:15.569Z INFO webdriver: RESULT true
2021-09-13T19:32:15.569Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "this-is-new-thought")]")
2021-09-13T19:32:15.569Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:15.569Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "this-is-new-thought")]'
}
2021-09-13T19:32:15.648Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5011', ELEMENT: '5011' }
2021-09-13T19:32:15.652Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:15.652Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:15.652Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'this-is-new-thought' ]
}
2021-09-13T19:32:15.695Z INFO webdriver: RESULT true
2021-09-13T19:32:15.696Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "this-is-new-thought")]")
2021-09-13T19:32:15.696Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/element
2021-09-13T19:32:15.696Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "this-is-new-thought")]'
}
2021-09-13T19:32:15.804Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5012', ELEMENT: '5012' }
2021-09-13T19:32:15.807Z INFO webdriver: COMMAND executeScript("return (newThoughtEditable => {
var _closest, _closest$firstElement;
const editable = (_closest = newThoughtEditable.closest('ul.children')) === null || _closest === void 0 ? void 0 : (_closest$firstElement = _closest.firstElementChild) === null || _closest$firstElement === void 0 ? void 0 : _closest$firstElement.getElementsByClassName('editable')[0];
return editable === null || editable === void 0 ? void 0 : editable.innerText;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:15.808Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e/execute/sync
2021-09-13T19:32:15.808Z INFO webdriver: DATA {
script: 'return (newThoughtEditable => {\n' +
' var _closest, _closest$firstElement;\n' +
'\n' +
" const editable = (_closest = newThoughtEditable.closest('ul.children')) === null || _closest === void 0 ? void 0 : (_closest$firstElement = _closest.firstElementChild) === null || _closest$firstElement === void 0 ? void 0 : _closest$firstElement.getElementsByClassName('editable')[0];\n" +
' return editable === null || editable === void 0 ? void 0 : editable.innerText;\n' +
' }).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5012', ELEMENT: '5012' }
]
}
2021-09-13T19:32:15.849Z INFO webdriver: RESULT y
2021-09-13T19:32:15.850Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:32:15.850Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/95a9e4eb7d38db6066cf701035229277a656464e
2021-09-13T19:32:16.448Z INFO webdriver: RESULT
2021-09-13T19:32:16.449Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:32:16.449Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:32:24.923Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:32:24.923Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/url
2021-09-13T19:32:24.923Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:32:26.515Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:26.515Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:26.515Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:27.738Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:32:27.741Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:27.741Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:27.741Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:27.828Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:32:27.831Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:32:27.831Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/5001/displayed
2021-09-13T19:32:27.945Z INFO webdriver: RESULT true
2021-09-13T19:32:27.946Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:32:27.946Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:27.946Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:32:28.018Z INFO webdriver: RESULT true
2021-09-13T19:32:28.018Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:32:28.018Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/5001/rect
2021-09-13T19:32:28.110Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:32:28.110Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:28.110Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:28.137Z INFO webdriver: RESULT WEBVIEW_33859.1
2021-09-13T19:32:28.137Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:28.137Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:28.137Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:28.211Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:32:28.211Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:28.211Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:32:28.658Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-4384-000000000000',
ELEMENT: '10000000-0000-0000-4384-000000000000'
}
2021-09-13T19:32:28.663Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-4384-000000000000")
2021-09-13T19:32:28.663Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/10000000-0000-0000-4384-000000000000/rect
2021-09-13T19:32:28.807Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:32:28.807Z INFO webdriver: COMMAND switchContext("WEBVIEW_33859.1")
2021-09-13T19:32:28.807Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:28.807Z INFO webdriver: DATA { name: 'WEBVIEW_33859.1' }
2021-09-13T19:32:31.911Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:31.912Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:31.912Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:32:33.005Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:33.005Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:33.005Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:33.532Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:32:33.537Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:33.537Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:33.537Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:34.052Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:32:34.057Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Bump Thought Down on a thought that has children"}}")
2021-09-13T19:32:34.057Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:34.057Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Bump Thought Down on a thought that has children"}}'
}
2021-09-13T19:32:34.058Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:32:34.058Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/window/rect
2021-09-13T19:32:34.559Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:34.559Z INFO webdriver: Retrying 1/100
2021-09-13T19:32:34.559Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:34.559Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "Bump Thought Down on a thought that has children"}}'
}
2021-09-13T19:32:34.628Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:32:34.630Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:34.630Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:34.630Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:35.274Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:35.199Z INFO webdriver: RESULT {"automation_session":{"name":"Bump Thought Down on a thought that has children","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"d70f146f22f183ad485c285c1287a1d15dcd2559","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:32:35.274Z INFO webdriver: Retrying 1/100
2021-09-13T19:32:35.274Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:35.274Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:36.216Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:36.217Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:36.217Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:32:36.267Z INFO webdriver: RESULT true
2021-09-13T19:32:36.267Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:32:36.267Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:36.267Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:32:36.410Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:32:36.415Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:32:36.415Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/keys
2021-09-13T19:32:36.415Z INFO webdriver: DATA { value: [ 'foo' ] }
2021-09-13T19:32:36.800Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:36.802Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:36.802Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'foo' ]
}
2021-09-13T19:32:36.854Z INFO webdriver: RESULT true
2021-09-13T19:32:36.854Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:32:36.854Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:36.854Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:32:36.978Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:32:36.982Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:32:36.982Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/window/rect
2021-09-13T19:32:37.046Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:32:37.046Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:37.046Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:37.046Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:37.964Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:37.965Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:37.965Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ '' ]
}
2021-09-13T19:32:38.107Z INFO webdriver: RESULT true
2021-09-13T19:32:38.107Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "")]")
2021-09-13T19:32:38.107Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:38.107Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "")]'
}
2021-09-13T19:32:38.234Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:32:38.239Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:32:38.239Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/keys
2021-09-13T19:32:38.239Z INFO webdriver: DATA { value: [ 'bar' ] }
2021-09-13T19:32:38.625Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:38.626Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:38.626Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'bar' ]
}
2021-09-13T19:32:38.678Z INFO webdriver: RESULT true
2021-09-13T19:32:38.678Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "bar")]")
2021-09-13T19:32:38.678Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:38.678Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "bar")]'
}
2021-09-13T19:32:38.762Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:32:38.766Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:38.766Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:38.795Z INFO webdriver: RESULT WEBVIEW_33859.1
2021-09-13T19:32:38.795Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:38.795Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:38.795Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:38.862Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:32:38.863Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:38.863Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:32:39.375Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'A7000000-0000-0000-4384-000000000000',
ELEMENT: 'A7000000-0000-0000-4384-000000000000'
}
2021-09-13T19:32:39.378Z INFO webdriver: COMMAND elementClick("A7000000-0000-0000-4384-000000000000")
2021-09-13T19:32:39.378Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/A7000000-0000-0000-4384-000000000000/click
2021-09-13T19:32:40.014Z INFO webdriver: COMMAND findElements("xpath", "//XCUIElementTypeButton[@name="Done"]")
2021-09-13T19:32:40.014Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/elements
2021-09-13T19:32:40.016Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Done"]' }
2021-09-13T19:32:40.585Z INFO webdriver: RESULT []
2021-09-13T19:32:40.587Z INFO webdriver: COMMAND switchContext("WEBVIEW_33859.1")
2021-09-13T19:32:40.587Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:40.587Z INFO webdriver: DATA { name: 'WEBVIEW_33859.1' }
2021-09-13T19:32:40.730Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "foo")]")
2021-09-13T19:32:40.731Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:40.732Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "foo")]'
}
2021-09-13T19:32:40.833Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:32:40.835Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:32:40.835Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/5008/rect
2021-09-13T19:32:40.973Z INFO webdriver: RESULT { x: 69.84375, y: 108.6875, width: 324, height: 26 }
2021-09-13T19:32:40.974Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:40.974Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:41.020Z INFO webdriver: RESULT WEBVIEW_33859.1
2021-09-13T19:32:41.020Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:41.021Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:41.021Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:41.047Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:32:41.047Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:41.047Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:32:41.450Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-4384-000000000000',
ELEMENT: '10000000-0000-0000-4384-000000000000'
}
2021-09-13T19:32:41.454Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-4384-000000000000")
2021-09-13T19:32:41.454Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element/10000000-0000-0000-4384-000000000000/rect
2021-09-13T19:32:41.570Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:32:41.570Z INFO webdriver: COMMAND switchContext("WEBVIEW_33859.1")
2021-09-13T19:32:41.570Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/context
2021-09-13T19:32:41.570Z INFO webdriver: DATA { name: 'WEBVIEW_33859.1' }
2021-09-13T19:32:41.803Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:41.803Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:41.803Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:32:42.164Z INFO webdriver: COMMAND getWindowRect()
2021-09-13T19:32:42.164Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/window/rect
2021-09-13T19:32:42.210Z INFO webdriver: RESULT { width: 414, height: 896, x: 0, y: 0 }
2021-09-13T19:32:42.210Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:42.210Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/touch/perform
2021-09-13T19:32:42.210Z INFO webdriver: DATA {
actions: [
{ action: 'press', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'wait', options: [Object] },
{ action: 'moveTo', options: [Object] },
{ action: 'release' }
]
}
2021-09-13T19:32:43.122Z INFO webdriver: COMMAND sendKeys(<object>)
2021-09-13T19:32:43.122Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/keys
2021-09-13T19:32:43.122Z INFO webdriver: DATA { value: [ 'new' ] }
2021-09-13T19:32:43.433Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:43.433Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:43.433Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'new' ]
}
2021-09-13T19:32:43.532Z INFO webdriver: RESULT true
2021-09-13T19:32:43.533Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "new")]")
2021-09-13T19:32:43.533Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/element
2021-09-13T19:32:43.533Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "new")]'
}
2021-09-13T19:32:43.716Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5009', ELEMENT: '5009' }
2021-09-13T19:32:43.719Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection3, _window$getSelection4;
return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;
}).apply(null, arguments)", <object>)
2021-09-13T19:32:43.719Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:43.719Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection3, _window$getSelection4;\n' +
'\n' +
' return (_window$getSelection3 = window.getSelection()) === null || _window$getSelection3 === void 0 ? void 0 : (_window$getSelection4 = _window$getSelection3.focusNode) === null || _window$getSelection4 === void 0 ? void 0 : _window$getSelection4.textContent;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:32:43.774Z INFO webdriver: RESULT new
2021-09-13T19:32:43.775Z INFO webdriver: COMMAND executeScript("return (newThoughtEditable => {
var _closest2, _closest2$firstElemen, _closest2$firstElemen2;
const children = (_closest2 = newThoughtEditable.closest('ul.children')) === null || _closest2 === void 0 ? void 0 : (_closest2$firstElemen = _closest2.firstElementChild) === null || _closest2$firstElemen === void 0 ? void 0 : (_closest2$firstElemen2 = _closest2$firstElemen.getElementsByTagName('ul')[0]) === null || _closest2$firstElemen2 === void 0 ? void 0 : _closest2$firstElemen2.getElementsByClassName('editable');
return Array.from(children).map(x => x.innerText);
}).apply(null, arguments)", <object>)
2021-09-13T19:32:43.775Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:43.775Z INFO webdriver: DATA {
script: 'return (newThoughtEditable => {\n' +
' var _closest2, _closest2$firstElemen, _closest2$firstElemen2;\n' +
'\n' +
" const children = (_closest2 = newThoughtEditable.closest('ul.children')) === null || _closest2 === void 0 ? void 0 : (_closest2$firstElemen = _closest2.firstElementChild) === null || _closest2$firstElemen === void 0 ? void 0 : (_closest2$firstElemen2 = _closest2$firstElemen.getElementsByTagName('ul')[0]) === null || _closest2$firstElemen2 === void 0 ? void 0 : _closest2$firstElemen2.getElementsByClassName('editable');\n" +
' return Array.from(children).map(x => x.innerText);\n' +
' }).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5009', ELEMENT: '5009' }
]
}
2021-09-13T19:32:43.834Z INFO webdriver: RESULT []
2021-09-13T19:32:43.841Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}")
2021-09-13T19:32:43.841Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:43.841Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
Teardown Test Environment for webdriverio.
2021-09-13T19:32:43.874Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:32:43.874Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559
2021-09-13T19:32:44.165Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:44.166Z INFO webdriver: Retrying 1/100
2021-09-13T19:32:44.166Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:44.166Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
FAIL src/e2e/iOS/__tests__/caret.ts (203.65 s)
✓ Enter edit mode (10188 ms)
✓ Preserve Editing: true (20741 ms)
✓ Preserve Editing: false (22475 ms)
✓ Tap hidden root thought (16038 ms)
✓ Tap hidden uncle (16580 ms)
✓ Tap empty content while keyboard up (18810 ms)
✓ Tap empty content while keyboard down (20203 ms)
✓ Swipe over cursor (19861 ms)
✓ Swipe over hidden thought (19462 ms)
✕ Bump Thought Down on a thought that has children (27992 ms)
○ skipped No uncle loop
● Bump Thought Down on a thought that has children
expect(received).toEqual(expected) // deep equality
- Expected - 4
+ Received + 1
- Array [
- "foo",
- "bar",
- ]
+ Array []
254 |
255 | expect(selectionTextContent).toBe('new')
> 256 | expect(childrenTexts).toEqual(['foo', 'bar'])
| ^
257 | })
258 |
at Object.<anonymous> (src/e2e/iOS/__tests__/caret.ts:256:25)
2021-09-13T19:32:45.232Z INFO webdriver: RESULT
Setup Test Environment for webdriverio.
Using the currently running app on http://localhost:3000
2021-09-13T19:32:45.277Z INFO webdriver: Initiate new session using the WebDriver protocol
2021-09-13T19:32:45.277Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:32:45.277Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:32:45.631Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:45.632Z INFO webdriver: Retrying 2/100
2021-09-13T19:32:45.632Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:45.632Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:46.852Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:46.852Z INFO webdriver: Retrying 3/100
2021-09-13T19:32:46.852Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:46.852Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:48.134Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:48.134Z INFO webdriver: Retrying 4/100
2021-09-13T19:32:48.134Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:48.134Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:49.372Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:49.372Z INFO webdriver: Retrying 5/100
2021-09-13T19:32:49.372Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:49.372Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:50.829Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:50.829Z INFO webdriver: Retrying 6/100
2021-09-13T19:32:50.829Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:50.829Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:52.100Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:52.100Z INFO webdriver: Retrying 7/100
2021-09-13T19:32:52.100Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:52.100Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:53.414Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:53.414Z INFO webdriver: Retrying 8/100
2021-09-13T19:32:53.414Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:53.414Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:54.672Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:54.619Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:32:54.620Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/url
2021-09-13T19:32:54.620Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:32:54.673Z INFO webdriver: Retrying 9/100
2021-09-13T19:32:54.673Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:54.673Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:55.903Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:55.903Z INFO webdriver: Retrying 10/100
2021-09-13T19:32:55.904Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:55.904Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:56.359Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:56.360Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:56.360Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:56.601Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:32:56.604Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:32:56.604Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:56.604Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:32:56.919Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:32:56.922Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:32:56.922Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/5001/displayed
2021-09-13T19:32:57.095Z INFO webdriver: RESULT true
2021-09-13T19:32:57.095Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:32:57.095Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:32:57.095Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:32:57.249Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:57.249Z INFO webdriver: Retrying 11/100
2021-09-13T19:32:57.249Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:57.249Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:57.291Z INFO webdriver: RESULT true
2021-09-13T19:32:57.292Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:32:57.292Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/5001/rect
2021-09-13T19:32:57.486Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:32:57.486Z INFO webdriver: COMMAND getContext()
2021-09-13T19:32:57.486Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:32:57.633Z INFO webdriver: RESULT WEBVIEW_87798.1
2021-09-13T19:32:57.633Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:32:57.633Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:32:57.633Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:32:57.778Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:32:57.778Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:57.778Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:32:58.321Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-F656-010000000000',
ELEMENT: '10000000-0000-0000-F656-010000000000'
}
2021-09-13T19:32:58.324Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-F656-010000000000")
2021-09-13T19:32:58.324Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/10000000-0000-0000-F656-010000000000/rect
2021-09-13T19:32:58.503Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:58.503Z INFO webdriver: Retrying 12/100
2021-09-13T19:32:58.503Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:58.504Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:58.569Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:32:58.569Z INFO webdriver: COMMAND switchContext("WEBVIEW_87798.1")
2021-09-13T19:32:58.569Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:32:58.569Z INFO webdriver: DATA { name: 'WEBVIEW_87798.1' }
2021-09-13T19:32:58.777Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:32:58.777Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/touch/perform
2021-09-13T19:32:58.777Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:32:59.184Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:59.185Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:59.185Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:59.447Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
2021-09-13T19:32:59.686Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:59.686Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:59.686Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:32:59.843Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:32:59.843Z INFO webdriver: Retrying 13/100
2021-09-13T19:32:59.844Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:32:59.844Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:32:59.915Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:32:59.918Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:32:59.918Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:32:59.918Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:33:00.170Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:33:00.173Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "split a thought when the caret is in the middle"}}")
2021-09-13T19:33:00.174Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:00.174Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "split a thought when the caret is in the middle"}}'
}
2021-09-13T19:33:00.175Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:33:00.175Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:00.175Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [
[ '__ROOT__' ],
'\n - puppeteer\n - web scraping\n - insomnia\n - rest api'
]
}
2021-09-13T19:33:00.712Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:00.713Z INFO webdriver: Retrying 1/100
2021-09-13T19:33:00.713Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:00.713Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "split a thought when the caret is in the middle"}}'
}
2021-09-13T19:33:00.814Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:00.814Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:00.814Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'puppeteer' ]
}
2021-09-13T19:33:01.070Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:01.140Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:01.070Z INFO webdriver: Retrying 1/100
2021-09-13T19:33:01.070Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:01.070Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'puppeteer' ]
}
2021-09-13T19:33:01.140Z INFO webdriver: Retrying 14/100
2021-09-13T19:33:01.140Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:01.140Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:01.438Z INFO webdriver: RESULT {"automation_session":{"name":"split a thought when the caret is in the middle","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"e6bc7a27614f444e6dc28f9cfd351bae625b05b4","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:33:01.973Z INFO webdriver: RESULT true
2021-09-13T19:33:01.973Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "puppeteer")]")
2021-09-13T19:33:01.973Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:01.973Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "puppeteer")]'
}
2021-09-13T19:33:02.429Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:02.429Z INFO webdriver: Retrying 15/100
2021-09-13T19:33:02.429Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:02.429Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:02.461Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:33:02.464Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "puppeteer")]")
2021-09-13T19:33:02.464Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:02.464Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "puppeteer")]'
}
2021-09-13T19:33:02.967Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:33:02.972Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:33:02.973Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/5005/click
2021-09-13T19:33:03.561Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:03.562Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:03.562Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'web scraping' ]
}
2021-09-13T19:33:03.753Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:03.753Z INFO webdriver: Retrying 16/100
2021-09-13T19:33:03.753Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:03.753Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:03.862Z INFO webdriver: RESULT true
2021-09-13T19:33:03.862Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "web scraping")]")
2021-09-13T19:33:03.862Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:03.862Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "web scraping")]'
}
2021-09-13T19:33:04.374Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:33:04.379Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "web scraping")]")
2021-09-13T19:33:04.379Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:04.379Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "web scraping")]'
}
2021-09-13T19:33:04.860Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:33:04.864Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:33:04.865Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/5007/click
2021-09-13T19:33:04.977Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:04.977Z INFO webdriver: Retrying 17/100
2021-09-13T19:33:04.977Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:04.977Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:05.430Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:05.431Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:05.431Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'web scraping' ]
}
2021-09-13T19:33:05.689Z INFO webdriver: RESULT true
2021-09-13T19:33:05.689Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "web scraping")]")
2021-09-13T19:33:05.689Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:05.690Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "web scraping")]'
}
2021-09-13T19:33:06.269Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:06.233Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:33:06.241Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:33:06.241Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/5008/rect
2021-09-13T19:33:06.269Z INFO webdriver: Retrying 18/100
2021-09-13T19:33:06.270Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:06.270Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:06.535Z INFO webdriver: RESULT { x: 89.59375, y: 110.5, width: 302, height: 26 }
2021-09-13T19:33:06.536Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:33:06.536Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:06.536Z INFO webdriver: DATA {
script: 'return (function (ele, offset) {\n' +
" // Element<'async'> does not contain native properties like nodeName, textContent, etc\n" +
' // Not sure what the actual WebDriverIO type that is returned by findElement\n' +
' // Node does not contain property elementId; it is only a Node inside browser.execute, so we cannot change the typeo of the nodeHandle argument\n' +
' const textNode = ele.firstChild;\n' +
" if (!textNode || textNode.nodeName !== '#text') return;\n" +
' const range = document.createRange();\n' +
' range.setStart(textNode, offset !== null && offset !== void 0 ? offset : 0);\n' +
' const {\n' +
' right,\n' +
' top,\n' +
' height\n' +
' } = range.getBoundingClientRect();\n' +
' return {\n' +
' x: right,\n' +
' y: top + height / 2\n' +
' };\n' +
' }).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' },
3
]
}
2021-09-13T19:33:06.828Z INFO webdriver: RESULT { x: 128.59375, y: 126.5 }
2021-09-13T19:33:06.829Z INFO webdriver: COMMAND getContext()
2021-09-13T19:33:06.829Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:07.075Z INFO webdriver: RESULT WEBVIEW_87798.1
2021-09-13T19:33:07.075Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:33:07.075Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:07.075Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:33:07.323Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:33:07.324Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:07.324Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:33:07.542Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:07.542Z INFO webdriver: Retrying 19/100
2021-09-13T19:33:07.542Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:07.542Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:08.200Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-F656-010000000000',
ELEMENT: '10000000-0000-0000-F656-010000000000'
}
2021-09-13T19:33:08.205Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-F656-010000000000")
2021-09-13T19:33:08.205Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/10000000-0000-0000-F656-010000000000/rect
2021-09-13T19:33:08.577Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:33:08.577Z INFO webdriver: COMMAND switchContext("WEBVIEW_87798.1")
2021-09-13T19:33:08.577Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:08.577Z INFO webdriver: DATA { name: 'WEBVIEW_87798.1' }
2021-09-13T19:33:08.845Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:08.845Z INFO webdriver: Retrying 20/100
2021-09-13T19:33:08.845Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:08.845Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:08.861Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:33:08.861Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/touch/perform
2021-09-13T19:33:08.861Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:33:09.373Z INFO webdriver: COMMAND getContext()
2021-09-13T19:33:09.373Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:09.611Z INFO webdriver: RESULT WEBVIEW_87798.1
2021-09-13T19:33:09.611Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:33:09.611Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:09.611Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:33:09.876Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeButton[@name="Return"]")
2021-09-13T19:33:09.876Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element
2021-09-13T19:33:09.876Z INFO webdriver: DATA { using: 'xpath', value: '//XCUIElementTypeButton[@name="Return"]' }
2021-09-13T19:33:10.125Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:10.125Z INFO webdriver: Retrying 21/100
2021-09-13T19:33:10.126Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:10.126Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:10.839Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '85000000-0000-0000-F656-010000000000',
ELEMENT: '85000000-0000-0000-F656-010000000000'
}
2021-09-13T19:33:10.845Z INFO webdriver: COMMAND elementClick("85000000-0000-0000-F656-010000000000")
2021-09-13T19:33:10.845Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/element/85000000-0000-0000-F656-010000000000/click
2021-09-13T19:33:11.446Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:11.446Z INFO webdriver: Retrying 22/100
2021-09-13T19:33:11.446Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:11.446Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:11.826Z INFO webdriver: COMMAND switchContext("WEBVIEW_87798.1")
2021-09-13T19:33:11.826Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/context
2021-09-13T19:33:11.826Z INFO webdriver: DATA { name: 'WEBVIEW_87798.1' }
2021-09-13T19:33:12.128Z INFO webdriver: COMMAND executeScript("return (() => {
var _window$getSelection;
return (_window$getSelection = window.getSelection()) === null || _window$getSelection === void 0 ? void 0 : _window$getSelection.focusOffset;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:12.128Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:12.128Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _window$getSelection;\n' +
'\n' +
' return (_window$getSelection = window.getSelection()) === null || _window$getSelection === void 0 ? void 0 : _window$getSelection.focusOffset;\n' +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:33:12.394Z INFO webdriver: RESULT 0
2021-09-13T19:33:12.396Z INFO webdriver: COMMAND executeScript("return (() => {
var _document$querySelect;
return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:12.396Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4/execute/sync
2021-09-13T19:33:12.396Z INFO webdriver: DATA {
script: 'return (() => {\n' +
' var _document$querySelect;\n' +
'\n' +
" return (_document$querySelect = document.querySelector('.editing .editable')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.innerHTML;\n" +
' }).apply(null, arguments)',
args: []
}
2021-09-13T19:33:12.713Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:12.713Z INFO webdriver: Retrying 23/100
2021-09-13T19:33:12.713Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:12.713Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:12.717Z INFO webdriver: RESULT scraping
Teardown Test Environment for webdriverio.
2021-09-13T19:33:12.719Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:33:12.719Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/e6bc7a27614f444e6dc28f9cfd351bae625b05b4
PASS src/e2e/iOS/__tests__/split.ts (27.453 s)
✓ split a thought when the caret is in the middle (18098 ms)
2021-09-13T19:33:13.385Z INFO webdriver: RESULT
Setup Test Environment for webdriverio.
Using the currently running app on http://localhost:3000
2021-09-13T19:33:13.424Z INFO webdriver: Initiate new session using the WebDriver protocol
2021-09-13T19:33:13.424Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session
2021-09-13T19:33:13.424Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
},
firstMatch: [ {} ]
},
desiredCapabilities: {
platformName: 'iOS',
browserName: 'Safari',
device: 'iPhone 11',
osVersion: '13.3',
unicodeKeyboard: true,
build: '[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n' +
'\n' +
'Removes direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]',
project: 'em',
'browserstack.localIdentifier': 'GitHubAction-357b3971-83ee-4e9a-a1da-5d31ba267117',
'browserstack.local': 'true',
'browserstack.idleTimeout': 30,
'browserstack.debug': 'true'
}
}
2021-09-13T19:33:13.939Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:13.939Z INFO webdriver: Retrying 24/100
2021-09-13T19:33:13.940Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:13.940Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:15.243Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:15.243Z INFO webdriver: Retrying 25/100
2021-09-13T19:33:15.243Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:15.243Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:16.597Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:16.598Z INFO webdriver: Retrying 26/100
2021-09-13T19:33:16.598Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:16.598Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:17.993Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:17.993Z INFO webdriver: Retrying 27/100
2021-09-13T19:33:17.993Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:17.993Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:19.319Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:19.319Z INFO webdriver: Retrying 28/100
2021-09-13T19:33:19.319Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:19.319Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:20.686Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:20.686Z INFO webdriver: Retrying 29/100
2021-09-13T19:33:20.686Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:20.686Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:22.350Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:22.347Z INFO webdriver: COMMAND navigateTo("http://bs-local.com:3000")
2021-09-13T19:33:22.348Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/url
2021-09-13T19:33:22.348Z INFO webdriver: DATA { url: 'http://bs-local.com:3000' }
2021-09-13T19:33:22.350Z INFO webdriver: Retrying 30/100
2021-09-13T19:33:22.350Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:22.350Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:23.571Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:23.571Z INFO webdriver: Retrying 31/100
2021-09-13T19:33:23.571Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:23.571Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:23.926Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:33:23.926Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:23.926Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:33:24.036Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5000', ELEMENT: '5000' }
2021-09-13T19:33:24.040Z INFO webdriver: COMMAND findElement("css selector", "#skip-tutorial")
2021-09-13T19:33:24.040Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:24.040Z INFO webdriver: DATA { using: 'css selector', value: '#skip-tutorial' }
2021-09-13T19:33:24.117Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
2021-09-13T19:33:24.120Z INFO webdriver: COMMAND isElementDisplayed("<Screenshot[base64]>")
2021-09-13T19:33:24.120Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/5001/displayed
2021-09-13T19:33:24.174Z INFO webdriver: RESULT true
2021-09-13T19:33:24.175Z INFO webdriver: COMMAND executeScript(<fn>, <object>)
2021-09-13T19:33:24.175Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:24.175Z INFO webdriver: DATA {
script: 'return (function isElementClickable(elem) {\n' +
' if (!elem.getBoundingClientRect || !elem.scrollIntoView || !elem.contains || !elem.getClientRects || !document.elementFromPoint) {\n' +
' return false;\n' +
' }\n' +
' // Edge before switching to Chromium\n' +
' const isOldEdge = !!window.StyleMedia;\n' +
' // returns true for Chrome and Firefox and false for Safari, Edge and IE\n' +
' const scrollIntoViewFullSupport = !(window.safari || isOldEdge);\n' +
' // get overlapping element\n' +
' function getOverlappingElement(elem, context) {\n' +
' context = context || document;\n' +
' const elemDimension = elem.getBoundingClientRect();\n' +
' const x = elemDimension.left + (elem.clientWidth / 2);\n' +
' const y = elemDimension.top + (elem.clientHeight / 2);\n' +
' return context.elementFromPoint(x, y);\n' +
' }\n' +
' // get overlapping element rects (currently only the first)\n' +
" // applicable if element's text is multiline.\n" +
' function getOverlappingRects(elem, context) {\n' +
' context = context || document;\n' +
' const elems = [];\n' +
' const rects = elem.getClientRects();\n' +
" // webdriver clicks on center of the first element's rect (line of text), it might change in future\n" +
' const rect = rects[0];\n' +
' const x = rect.left + (rect.width / 2);\n' +
' const y = rect.top + (rect.height / 2);\n' +
' elems.push(context.elementFromPoint(x, y));\n' +
' return elems;\n' +
' }\n' +
' // get overlapping elements\n' +
' function getOverlappingElements(elem, context) {\n' +
' return [getOverlappingElement(elem, context)].concat(getOverlappingRects(elem, context));\n' +
' }\n' +
' // is a node a descendant of a given node\n' +
' function nodeContains(elem, otherNode) {\n' +
" // Edge doesn't support neither Shadow Dom nor contains if ShadowRoot polyfill is used\n" +
' if (isOldEdge) {\n' +
' let tmpElement = otherNode;\n' +
' while (tmpElement) {\n' +
' if (tmpElement === elem) {\n' +
' return true;\n' +
' }\n' +
' tmpElement = tmpElement.parentNode;\n' +
' // DocumentFragment / ShadowRoot polyfill like ShadyRoot\n' +
' if (tmpElement && tmpElement.nodeType === 11 && tmpElement.host) {\n' +
' tmpElement = tmpElement.host;\n' +
' }\n' +
' }\n' +
' return false;\n' +
' }\n' +
' return elem.contains(otherNode);\n' +
' }\n' +
' // is one of overlapping elements the `elem` or one of its child\n' +
' function isOverlappingElementMatch(elementsFromPoint, elem) {\n' +
' if (elementsFromPoint.some(function (elementFromPoint) {\n' +
' return elementFromPoint === elem || nodeContains(elem, elementFromPoint);\n' +
' })) {\n' +
' return true;\n' +
' }\n' +
' // shadow root\n' +
' // filter unique elements with shadowRoot\n' +
' // @ts-ignore\n' +
' let elemsWithShadowRoot = [].concat(elementsFromPoint);\n' +
' elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x) {\n' +
' return x && x.shadowRoot && x.shadowRoot.elementFromPoint;\n' +
' });\n' +
' // getOverlappingElements of every element with shadowRoot\n' +
' let shadowElementsFromPoint = [];\n' +
' for (let i = 0; i < elemsWithShadowRoot.length; ++i) {\n' +
' let shadowElement = elemsWithShadowRoot[i];\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.concat(getOverlappingElements(elem, shadowElement.shadowRoot));\n' +
' }\n' +
' // remove duplicates and parents\n' +
' // @ts-ignore\n' +
' shadowElementsFromPoint = [].concat(shadowElementsFromPoint);\n' +
' shadowElementsFromPoint = shadowElementsFromPoint.filter(function (x) {\n' +
' return !elementsFromPoint.includes(x);\n' +
' });\n' +
' if (shadowElementsFromPoint.length === 0) {\n' +
' return false;\n' +
' }\n' +
' return isOverlappingElementMatch(shadowElementsFromPoint, elem);\n' +
' }\n' +
' // copied from `isElementInViewport.js`\n' +
' function isElementInViewport(elem) {\n' +
' if (!elem.getBoundingClientRect) {\n' +
' return false;\n' +
' }\n' +
' const rect = elem.getBoundingClientRect();\n' +
' const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n' +
' const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n' +
' const vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) > 0);\n' +
' const horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) > 0);\n' +
' return (vertInView && horInView);\n' +
' }\n' +
' function isClickable(elem) {\n' +
' return (isElementInViewport(elem) && elem.disabled !== true &&\n' +
' isOverlappingElementMatch(getOverlappingElements(elem), elem));\n' +
' }\n' +
" // scroll to the element if it's not clickable\n" +
' if (!isClickable(elem)) {\n' +
' // works well in dialogs, but the element may be still overlapped by some sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'nearest', inline: 'nearest' } : false);\n" +
' // if element is still not clickable take another scroll attempt\n' +
' if (!isClickable(elem)) {\n' +
' // scroll to element, try put it in the screen center.\n' +
' // Should definitely work even if element was covered with sticky header/footer\n' +
" elem.scrollIntoView(scrollIntoViewFullSupport ? { block: 'center', inline: 'center' } : true);\n" +
' return isClickable(elem);\n' +
' }\n' +
' }\n' +
' return true;\n' +
'}).apply(null, arguments)',
args: [
{ 'element-6066-11e4-a52e-4f735466cecf': '5001', ELEMENT: '5001' }
]
}
2021-09-13T19:33:24.251Z INFO webdriver: RESULT true
2021-09-13T19:33:24.252Z INFO webdriver: COMMAND getElementRect("<Screenshot[base64]>")
2021-09-13T19:33:24.252Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/5001/rect
2021-09-13T19:33:24.316Z INFO webdriver: RESULT { x: 102.802001953125, y: 283.859375, width: 208, height: 19 }
2021-09-13T19:33:24.317Z INFO webdriver: COMMAND getContext()
2021-09-13T19:33:24.317Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/context
2021-09-13T19:33:24.381Z INFO webdriver: RESULT WEBVIEW_25724.1
2021-09-13T19:33:24.382Z INFO webdriver: COMMAND switchContext("NATIVE_APP")
2021-09-13T19:33:24.382Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/context
2021-09-13T19:33:24.382Z INFO webdriver: DATA { name: 'NATIVE_APP' }
2021-09-13T19:33:24.412Z INFO webdriver: COMMAND findElement("xpath", "//XCUIElementTypeOther[@name="topBrowserBar"]")
2021-09-13T19:33:24.413Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:24.413Z INFO webdriver: DATA {
using: 'xpath',
value: '//XCUIElementTypeOther[@name="topBrowserBar"]'
}
2021-09-13T19:33:24.652Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': '10000000-0000-0000-7C64-000000000000',
ELEMENT: '10000000-0000-0000-7C64-000000000000'
}
2021-09-13T19:33:24.655Z INFO webdriver: COMMAND getElementRect("10000000-0000-0000-7C64-000000000000")
2021-09-13T19:33:24.655Z INFO webdriver: [GET] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/10000000-0000-0000-7C64-000000000000/rect
2021-09-13T19:33:24.850Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:24.829Z INFO webdriver: RESULT { y: 44, x: 0, width: 414, height: 50 }
2021-09-13T19:33:24.829Z INFO webdriver: COMMAND switchContext("WEBVIEW_25724.1")
2021-09-13T19:33:24.829Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/context
2021-09-13T19:33:24.829Z INFO webdriver: DATA { name: 'WEBVIEW_25724.1' }
2021-09-13T19:33:24.851Z INFO webdriver: Retrying 32/100
2021-09-13T19:33:24.851Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:24.851Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:24.976Z INFO webdriver: COMMAND touchPerform(<object>)
2021-09-13T19:33:24.976Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/touch/perform
2021-09-13T19:33:24.976Z INFO webdriver: DATA { actions: [ { action: 'tap', options: [Object] } ] }
2021-09-13T19:33:25.219Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:33:25.219Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:25.219Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:33:25.405Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5002', ELEMENT: '5002' }
2021-09-13T19:33:25.408Z INFO webdriver: COMMAND findElement("css selector", ".new-thought-instructions")
2021-09-13T19:33:25.408Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:25.408Z INFO webdriver: DATA { using: 'css selector', value: '.new-thought-instructions' }
2021-09-13T19:33:25.495Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5003', ELEMENT: '5003' }
2021-09-13T19:33:25.498Z INFO webdriver: COMMAND executeScript("browserstack_executor: {"action": "setSessionName", "arguments": {"name": "click home link to set the cursor to null"}}")
2021-09-13T19:33:25.498Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:25.498Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "click home link to set the cursor to null"}}'
}
2021-09-13T19:33:25.499Z INFO webdriver: COMMAND executeScript("return ((_pathUnranked, _text) => {
const testHelpers = em.testHelpers;
testHelpers.importToContext(_pathUnranked, _text);
}).apply(null, arguments)", <object>)
2021-09-13T19:33:25.499Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:25.499Z INFO webdriver: DATA {
script: 'return ((_pathUnranked, _text) => {\n' +
' const testHelpers = em.testHelpers;\n' +
' testHelpers.importToContext(_pathUnranked, _text);\n' +
' }).apply(null, arguments)',
args: [ [ '__ROOT__' ], '\n - a\n - b' ]
}
2021-09-13T19:33:25.728Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:25.728Z INFO webdriver: Retrying 1/100
2021-09-13T19:33:25.728Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:25.728Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "click home link to set the cursor to null"}}'
}
2021-09-13T19:33:26.099Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:26.044Z INFO webdriver: COMMAND executeScript("return (value => {
return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;
}).apply(null, arguments)", <object>)
2021-09-13T19:33:26.044Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:26.044Z INFO webdriver: DATA {
script: 'return (value => {\n' +
" return Array.from(document.getElementsByClassName('editable')).filter(element => element.innerHTML === value).length > 0;\n" +
' }).apply(null, arguments)',
args: [ 'b' ]
}
2021-09-13T19:33:26.099Z INFO webdriver: Retrying 33/100
2021-09-13T19:33:26.099Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:26.099Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:26.405Z INFO webdriver: RESULT true
2021-09-13T19:33:26.405Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:33:26.405Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:26.405Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:33:26.978Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:26.947Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5004', ELEMENT: '5004' }
2021-09-13T19:33:26.950Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:33:26.950Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:26.950Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:33:26.978Z INFO webdriver: Retrying 2/100
2021-09-13T19:33:26.978Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/execute/sync
2021-09-13T19:33:26.978Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionName", "arguments": {"name": "click home link to set the cursor to null"}}'
}
2021-09-13T19:33:27.244Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:27.328Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:27.244Z INFO webdriver: Retrying 1/100
2021-09-13T19:33:27.244Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:27.244Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:33:27.321Z INFO webdriver: RESULT {"automation_session":{"name":"click home link to set the cursor to null","duration":null,"os":"ios","os_version":"13.3","browser_version":null,"browser":null,"device":"iPhone 11","status":"running","hashed_id":"3f279e714726382b79694d8435c264fef2032a23","reason":null,"build_name":"[dev] Commit 3ef3f8d: Replace isPointInLeftDutter with SidebarGutter.\n\nRemoves direct DOM access and fixes functionality on iOS PWA. [Workflow: 565]","project_name":"em","build_hashed_id":"5509fe50089f6afe1ce2fd8f494d601b1f203c9e","test_priority":null}}
2021-09-13T19:33:27.329Z INFO webdriver: Retrying 34/100
2021-09-13T19:33:27.329Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:27.329Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:27.972Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5005', ELEMENT: '5005' }
2021-09-13T19:33:27.975Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:33:27.975Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/5005/click
2021-09-13T19:33:28.607Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:28.529Z INFO webdriver: COMMAND findElement("xpath", "//div[contains(@class,"editable") and contains(text(), "b")]")
2021-09-13T19:33:28.529Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:28.529Z INFO webdriver: DATA {
using: 'xpath',
value: '//div[contains(@class,"editable") and contains(text(), "b")]'
}
2021-09-13T19:33:28.607Z INFO webdriver: Retrying 35/100
2021-09-13T19:33:28.607Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:28.607Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:29.059Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5006', ELEMENT: '5006' }
2021-09-13T19:33:29.063Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:33:29.063Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/5006/click
2021-09-13T19:33:29.596Z INFO webdriver: COMMAND findElement("css selector", ".editing")
2021-09-13T19:33:29.597Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:29.597Z INFO webdriver: DATA { using: 'css selector', value: '.editing' }
2021-09-13T19:33:30.002Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:30.002Z INFO webdriver: Retrying 36/100
2021-09-13T19:33:30.002Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:30.002Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:30.117Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5007', ELEMENT: '5007' }
2021-09-13T19:33:30.123Z INFO webdriver: COMMAND findElement("css selector", ".home a")
2021-09-13T19:33:30.123Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:30.123Z INFO webdriver: DATA { using: 'css selector', value: '.home a' }
2021-09-13T19:33:30.645Z INFO webdriver: RESULT { 'element-6066-11e4-a52e-4f735466cecf': '5008', ELEMENT: '5008' }
2021-09-13T19:33:30.651Z INFO webdriver: COMMAND elementClick("<Screenshot[base64]>")
2021-09-13T19:33:30.651Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element/5008/click
2021-09-13T19:33:31.180Z INFO webdriver: COMMAND findElement("css selector", ".editing")
2021-09-13T19:33:31.180Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23/element
2021-09-13T19:33:31.180Z INFO webdriver: DATA { using: 'css selector', value: '.editing' }
2021-09-13T19:33:31.390Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:31.390Z INFO webdriver: Retrying 37/100
2021-09-13T19:33:31.390Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:31.390Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:32.099Z INFO webdriver: RESULT {
message: 'An element could not be located on the page using the given search parameters.'
}
Teardown Test Environment for webdriverio.
2021-09-13T19:33:32.106Z INFO webdriver: COMMAND deleteSession()
2021-09-13T19:33:32.106Z INFO webdriver: [DELETE] hub.browserstack.com/wd/hub/session/3f279e714726382b79694d8435c264fef2032a23
2021-09-13T19:33:32.621Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:32.621Z INFO webdriver: Retrying 38/100
2021-09-13T19:33:32.621Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:32.621Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
PASS src/e2e/iOS/__tests__/home.ts (18.693 s)
✓ click home link to set the cursor to null (9758 ms)
Test Suites: 1 failed, 2 passed, 3 total
Tests: 1 failed, 1 skipped, 11 passed, 13 total
Snapshots: 0 total
Time: 253.588 s
Ran all test suites matching /.\/src\/e2e\/iOS/i.
2021-09-13T19:33:32.980Z INFO webdriver: RESULT
2021-09-13T19:33:33.949Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:33.949Z INFO webdriver: Retrying 39/100
2021-09-13T19:33:33.949Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:33.949Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
Jest did not exit one second after the test run has completed.
This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue.
2021-09-13T19:33:35.188Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:35.188Z INFO webdriver: Retrying 40/100
2021-09-13T19:33:35.188Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:35.188Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:36.460Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:36.460Z INFO webdriver: Retrying 41/100
2021-09-13T19:33:36.460Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:36.460Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:37.702Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:37.702Z INFO webdriver: Retrying 42/100
2021-09-13T19:33:37.702Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:37.702Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:38.989Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:38.990Z INFO webdriver: Retrying 43/100
2021-09-13T19:33:38.990Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:38.990Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:40.280Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:40.280Z INFO webdriver: Retrying 44/100
2021-09-13T19:33:40.280Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:40.280Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:41.543Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:41.543Z INFO webdriver: Retrying 45/100
2021-09-13T19:33:41.544Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:41.544Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:42.813Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:42.813Z INFO webdriver: Retrying 46/100
2021-09-13T19:33:42.814Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:42.814Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:44.063Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:44.063Z INFO webdriver: Retrying 47/100
2021-09-13T19:33:44.063Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:44.064Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:45.480Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:45.480Z INFO webdriver: Retrying 48/100
2021-09-13T19:33:45.481Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:45.481Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:46.734Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:46.734Z INFO webdriver: Retrying 49/100
2021-09-13T19:33:46.735Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:46.735Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:48.061Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:48.061Z INFO webdriver: Retrying 50/100
2021-09-13T19:33:48.061Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:48.062Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:49.319Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:49.319Z INFO webdriver: Retrying 51/100
2021-09-13T19:33:49.319Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:49.319Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:50.586Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:50.586Z INFO webdriver: Retrying 52/100
2021-09-13T19:33:50.587Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:50.587Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:51.834Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:51.834Z INFO webdriver: Retrying 53/100
2021-09-13T19:33:51.834Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:51.834Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:53.108Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:53.108Z INFO webdriver: Retrying 54/100
2021-09-13T19:33:53.108Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:53.108Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:54.443Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:54.443Z INFO webdriver: Retrying 55/100
2021-09-13T19:33:54.443Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:54.443Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:55.743Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:55.743Z INFO webdriver: Retrying 56/100
2021-09-13T19:33:55.743Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:55.743Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:56.991Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:56.991Z INFO webdriver: Retrying 57/100
2021-09-13T19:33:56.991Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:56.991Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:58.310Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:58.310Z INFO webdriver: Retrying 58/100
2021-09-13T19:33:58.310Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:58.310Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:33:59.588Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:33:59.588Z INFO webdriver: Retrying 59/100
2021-09-13T19:33:59.588Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:33:59.588Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:01.058Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:01.058Z INFO webdriver: Retrying 60/100
2021-09-13T19:34:01.058Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:01.058Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:02.298Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:02.298Z INFO webdriver: Retrying 61/100
2021-09-13T19:34:02.299Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:02.299Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:03.693Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:03.693Z INFO webdriver: Retrying 62/100
2021-09-13T19:34:03.693Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:03.693Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:04.981Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:04.981Z INFO webdriver: Retrying 63/100
2021-09-13T19:34:04.981Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:04.981Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:06.449Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:06.449Z INFO webdriver: Retrying 64/100
2021-09-13T19:34:06.449Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:06.449Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:07.921Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:07.921Z INFO webdriver: Retrying 65/100
2021-09-13T19:34:07.921Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:07.921Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:09.612Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:09.612Z INFO webdriver: Retrying 66/100
2021-09-13T19:34:09.612Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:09.612Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:11.079Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:11.079Z INFO webdriver: Retrying 67/100
2021-09-13T19:34:11.079Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:11.079Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:12.520Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:12.520Z INFO webdriver: Retrying 68/100
2021-09-13T19:34:12.521Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:12.521Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:14.131Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:14.131Z INFO webdriver: Retrying 69/100
2021-09-13T19:34:14.131Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:14.131Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:15.600Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:15.600Z INFO webdriver: Retrying 70/100
2021-09-13T19:34:15.600Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:15.600Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:17.044Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:17.044Z INFO webdriver: Retrying 71/100
2021-09-13T19:34:17.044Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:17.044Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:18.512Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:18.512Z INFO webdriver: Retrying 72/100
2021-09-13T19:34:18.512Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:18.512Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:19.952Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:19.953Z INFO webdriver: Retrying 73/100
2021-09-13T19:34:19.953Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:19.953Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:21.391Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:21.391Z INFO webdriver: Retrying 74/100
2021-09-13T19:34:21.391Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:21.391Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:22.835Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:22.835Z INFO webdriver: Retrying 75/100
2021-09-13T19:34:22.835Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:22.835Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:24.293Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:24.293Z INFO webdriver: Retrying 76/100
2021-09-13T19:34:24.293Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:24.293Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:25.745Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:25.745Z INFO webdriver: Retrying 77/100
2021-09-13T19:34:25.745Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:25.745Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:27.236Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:27.236Z INFO webdriver: Retrying 78/100
2021-09-13T19:34:27.236Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:27.237Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:28.704Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:28.704Z INFO webdriver: Retrying 79/100
2021-09-13T19:34:28.704Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:28.704Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:30.560Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:30.560Z INFO webdriver: Retrying 80/100
2021-09-13T19:34:30.560Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:30.560Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:32.001Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:32.002Z INFO webdriver: Retrying 81/100
2021-09-13T19:34:32.002Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:32.002Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:33.459Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:33.459Z INFO webdriver: Retrying 82/100
2021-09-13T19:34:33.459Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:33.459Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:34.943Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:34.943Z INFO webdriver: Retrying 83/100
2021-09-13T19:34:34.943Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:34.943Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:36.404Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:36.404Z INFO webdriver: Retrying 84/100
2021-09-13T19:34:36.404Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:36.404Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:37.838Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:37.838Z INFO webdriver: Retrying 85/100
2021-09-13T19:34:37.838Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:37.838Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:39.312Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:39.312Z INFO webdriver: Retrying 86/100
2021-09-13T19:34:39.312Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:39.312Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:40.847Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:40.847Z INFO webdriver: Retrying 87/100
2021-09-13T19:34:40.847Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:40.847Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:42.297Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:42.297Z INFO webdriver: Retrying 88/100
2021-09-13T19:34:42.297Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:42.297Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:44.297Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:44.297Z INFO webdriver: Retrying 89/100
2021-09-13T19:34:44.297Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:44.298Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:45.794Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:45.794Z INFO webdriver: Retrying 90/100
2021-09-13T19:34:45.795Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:45.795Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
2021-09-13T19:34:47.695Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
}
2021-09-13T19:34:47.695Z INFO webdriver: Retrying 91/100
2021-09-13T19:34:47.696Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:47.696Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:49.319Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:49.320Z INFO webdriver: Retrying 92/100
2021-09-13T19:34:49.320Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:49.320Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:50.952Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:50.952Z INFO webdriver: Retrying 93/100
2021-09-13T19:34:50.952Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:50.952Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:52.397Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:52.398Z INFO webdriver: Retrying 94/100
2021-09-13T19:34:52.398Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:52.398Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:53.859Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:53.859Z INFO webdriver: Retrying 95/100
2021-09-13T19:34:53.859Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:53.860Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:55.309Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:55.309Z INFO webdriver: Retrying 96/100
2021-09-13T19:34:55.310Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:55.310Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:56.757Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:56.757Z INFO webdriver: Retrying 97/100
2021-09-13T19:34:56.757Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:56.757Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:34:58.397Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:34:58.397Z INFO webdriver: Retrying 98/100
2021-09-13T19:34:58.397Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:34:58.397Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:35:00.070Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:35:00.070Z INFO webdriver: Retrying 99/100
2021-09-13T19:35:00.070Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:35:00.070Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:35:01.756Z WARN webdriver: Request failed with status 404 due to Session not started or terminated
2021-09-13T19:35:01.756Z INFO webdriver: Retrying 100/100
2021-09-13T19:35:01.756Z INFO webdriver: [POST] hub.browserstack.com/wd/hub/session/d70f146f22f183ad485c285c1287a1d15dcd2559/execute/sync
2021-09-13T19:35:01.756Z INFO webdriver: DATA {
script: 'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "Failed"}}'
}
2021-09-13T19:35:03.189Z ERROR webdriver: Request failed with status 404 due to Error: Session not started or terminated
(node:2229) UnhandledPromiseRejectionWarning: Error: Session not started or terminated
at Object.getErrorFromResponseBody (/home/runner/work/em/em/node_modules/webdriver/build/utils.js:189:12)
at WebDriverRequest._request (/home/runner/work/em/em/node_modules/webdriver/build/request.js:168:31)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at Browser.wrapCommandFn (/home/runner/work/em/em/node_modules/@wdio/utils/build/shim.js:78:29)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:2229) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:2229) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
error Command failed with exit code 1.
info Visit yarnpkg.com/en/docs/cli/run for documentation about this command.
Error: Process completed with exit code 1.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment