Test Suites
60 passed, 88 total
Tests
234 passed, 334 total
Snapshots
0 passed, 0 total
{
"log": false,
"resultDir": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/artifacts/jest-stare/",
"resultHtml": "android-report.html",
"reportHeadline": "android Mobile App E2E with Detox and Jest",
"resultJson": "jest-results.json"
}
{
"numFailedTestSuites": 28,
"numFailedTests": 100,
"numPassedTestSuites": 60,
"numPassedTests": 234,
"numPendingTestSuites": 0,
"numPendingTests": 0,
"numRuntimeErrorTestSuites": 19,
"numTodoTests": 0,
"numTotalTestSuites": 88,
"numTotalTests": 334,
"openHandles": [],
"snapshot": {
"added": 0,
"didUpdate": false,
"failure": false,
"filesAdded": 0,
"filesRemoved": 0,
"filesRemovedList": [],
"filesUnmatched": 0,
"filesUpdated": 0,
"matched": 0,
"total": 0,
"unchecked": 0,
"uncheckedKeysByFile": [],
"unmatched": 0,
"updated": 0
},
"startTime": 1765990051118,
"success": false,
"testResults": [
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990312714,
"runtime": 117564,
"slow": true,
"start": 1765990195150
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/preauth_secret_connection.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Server Login - Preauth Secret Connection"
],
"duration": 22543,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Preauth Secret Connection MM-T5000_1 - should toggle advanced options and verify preauth secret field styling",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5000_1 - should toggle advanced options and verify preauth secret field styling"
},
{
"ancestorTitles": [
"Server Login - Preauth Secret Connection"
],
"duration": 13935,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Preauth Secret Connection MM-T5000_2 - should connect to server with preauth secret and verify storage",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5000_2 - should connect to server with preauth secret and verify storage"
},
{
"ancestorTitles": [
"Server Login - Preauth Secret Connection"
],
"duration": 13525,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Preauth Secret Connection MM-T5000_3 - should connect to server without preauth secret",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5000_3 - should connect to server without preauth secret"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990446481,
"runtime": 133609,
"slow": true,
"start": 1765990312872
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/server_list.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 5811,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_1 - should match elements on server list screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_1 - should match elements on server list screen"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 37174,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_2 - should be able to add and log in to new servers",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_2 - should be able to add and log in to new servers"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 5258,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_3 - should be able to switch to another existing server",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_3 - should be able to switch to another existing server"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 5459,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/server_list.e2e.ts:199:59)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Server Login - Server List MM-T4691_4 - should be able to edit server display name of active and inactive servers",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4691_4 - should be able to edit server display name of active and inactive servers"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 19898,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_5 - should be able to remove a server from the list",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_5 - should be able to remove a server from the list"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 8408,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_6 - should be able to log out a server from the list",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_6 - should be able to log out a server from the list"
},
{
"ancestorTitles": [
"Server Login - Server List"
],
"duration": 17058,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Server List MM-T4691_7 - should not be able to add server for an already existing server",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4691_7 - should not be able to add server for an already existing server"
}
],
"failureMessage": " ● Server Login - Server List › MM-T4691_4 - should be able to edit server display name of active and inactive servers\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n \u001b[0m \u001b[90m 197 |\u001b[39m\n \u001b[90m 198 |\u001b[39m \u001b[90m// * Verify save button is disabled\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 199 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mEditServerScreen\u001b[39m\u001b[33m.\u001b[39msaveButtonDisabled)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 200 |\u001b[39m\n \u001b[90m 201 |\u001b[39m \u001b[90m// # Enter a new first server display name\u001b[39m\n \u001b[90m 202 |\u001b[39m \u001b[36mconst\u001b[39m newServerOneDisplayName \u001b[33m=\u001b[39m \u001b[32m`${serverOneDisplayName} new`\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/server_login/server_list.e2e.ts:199:59)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990525220,
"runtime": 78558,
"slow": true,
"start": 1765990446662
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/account.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Account"
],
"duration": 15012,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Account MM-T5114_1 - should be able to set user presence and custom status",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5114_1 - should be able to set user presence and custom status"
},
{
"ancestorTitles": [
"Smoke Test - Account"
],
"duration": 11884,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Account MM-T5114_2 - should be able to edit profile",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5114_2 - should be able to edit profile"
},
{
"ancestorTitles": [
"Smoke Test - Account"
],
"duration": 12058,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Account MM-T5114_3 - should be able to set notification settings",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5114_3 - should be able to set notification settings"
},
{
"ancestorTitles": [
"Smoke Test - Account"
],
"duration": 5506,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Account MM-T5114_4 - should be able to set display settings",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5114_4 - should be able to set display settings"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990585220,
"runtime": 59900,
"slow": true,
"start": 1765990525320
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/autocomplete.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 4137,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/autocomplete.e2e.ts:67:9)"
],
"fullName": "Smoke Test - Autocomplete MM-T4886_1 - should be able to select and post at-mention suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4886_1 - should be able to select and post at-mention suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 3844,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=446, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-420.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/autocomplete.e2e.ts:91:9)"
],
"fullName": "Smoke Test - Autocomplete MM-T4886_2 - should be able to select and post channel mention suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4886_2 - should be able to select and post channel mention suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 5042,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/autocomplete.e2e.ts:118:9)"
],
"fullName": "Smoke Test - Autocomplete MM-T4886_3 - should be able to select and post emoji suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4886_3 - should be able to select and post emoji suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 4514,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/autocomplete.e2e.ts:142:9)"
],
"fullName": "Smoke Test - Autocomplete MM-T4886_4 - should be able to select and post slash suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4886_4 - should be able to select and post slash suggestion"
}
],
"failureMessage": " ● Smoke Test - Autocomplete › MM-T4886_1 - should be able to select and post at-mention suggestion\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/smoke_test/autocomplete.e2e.ts:67:9)\n\n ● Smoke Test - Autocomplete › MM-T4886_2 - should be able to select and post channel mention suggestion\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=446, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-420.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/smoke_test/autocomplete.e2e.ts:91:9)\n\n ● Smoke Test - Autocomplete › MM-T4886_3 - should be able to select and post emoji suggestion\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/smoke_test/autocomplete.e2e.ts:118:9)\n\n ● Smoke Test - Autocomplete › MM-T4886_4 - should be able to select and post slash suggestion\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/smoke_test/autocomplete.e2e.ts:142:9)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990752525,
"runtime": 167215,
"slow": true,
"start": 1765990585310
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/channels.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 32063,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_1 - should be able to join a new channel and switch to an existing channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_1 - should be able to join a new channel and switch to an existing channel"
},
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 41091,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_2 - should be able to create a channel and create a direct message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_2 - should be able to create a channel and create a direct message"
},
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 9991,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_3 - should be able to post a message in a channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_3 - should be able to post a message in a channel"
},
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 15062,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_4 - should be able to find and edit a channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_4 - should be able to find and edit a channel"
},
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 10250,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_5 - should be able to favorite and mute a channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_5 - should be able to favorite and mute a channel"
},
{
"ancestorTitles": [
"Smoke Test - Channels"
],
"duration": 25857,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Channels MM-T4774_6 - should be able to archive and leave a channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4774_6 - should be able to archive and leave a channel"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 7,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990874943,
"runtime": 122234,
"slow": true,
"start": 1765990752709
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 22950,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:75:9)"
],
"fullName": "Smoke Test - Messaging MM-T4786_1 - should be able to post, edit, and delete a message",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_1 - should be able to post, edit, and delete a message"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10718,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_2 - should be able to reply to a message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_2 - should be able to reply to a message"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10615,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_3 - should be able to include emojis in a message and add reaction to a message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_3 - should be able to include emojis in a message and add reaction to a message"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10610,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_4 - should be able to follow/unfollow a message, save/unsave a message, and pin/unpin a message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_4 - should be able to follow/unfollow a message, save/unsave a message, and pin/unpin a message"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10761,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_5 - should be able to post a message with at-mention and channel mention",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_5 - should be able to post a message with at-mention and channel mention"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10680,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_6 - should be able to post labeled permalink and labeled channel link",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_6 - should be able to post labeled permalink and labeled channel link"
},
{
"ancestorTitles": [
"Smoke Test - Messaging"
],
"duration": 10684,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Smoke Test - Messaging MM-T4786_7 - should be able to post a message with markdown",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4786_7 - should be able to post a message with markdown"
}
],
"failureMessage": " ● Smoke Test - Messaging › MM-T4786_1 - should be able to post, edit, and delete a message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:75:9)\n\n ● Smoke Test - Messaging › MM-T4786_2 - should be able to reply to a message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n ● Smoke Test - Messaging › MM-T4786_3 - should be able to include emojis in a message and add reaction to a message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n ● Smoke Test - Messaging › MM-T4786_4 - should be able to follow/unfollow a message, save/unsave a message, and pin/unpin a message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n ● Smoke Test - Messaging › MM-T4786_5 - should be able to post a message with at-mention and channel mention\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n ● Smoke Test - Messaging › MM-T4786_6 - should be able to post labeled permalink and labeled channel link\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n ● Smoke Test - Messaging › MM-T4786_7 - should be able to post a message with markdown\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:55:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:60:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/messaging.e2e.ts:60:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990970894,
"runtime": 95806,
"slow": true,
"start": 1765990875088
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/search.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Search"
],
"duration": 12719,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Search MM-T4911_1 - should be able to display a recent mention on recent mentions screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4911_1 - should be able to display a recent mention on recent mentions screen"
},
{
"ancestorTitles": [
"Smoke Test - Search"
],
"duration": 16558,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Search MM-T4911_2 - should be able to display a saved message on saved messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4911_2 - should be able to display a saved message on saved messages screen"
},
{
"ancestorTitles": [
"Smoke Test - Search"
],
"duration": 17145,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Search MM-T4911_3 - should be able to display a pinned message on pinned messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4911_3 - should be able to display a pinned message on pinned messages screen"
},
{
"ancestorTitles": [
"Smoke Test - Search"
],
"duration": 15674,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Search MM-T4911_4 - should be able to search for a message and display on search results screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4911_4 - should be able to search for a message and display on search results screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991038379,
"runtime": 67318,
"slow": true,
"start": 1765990971061
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/server_login.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Server Login"
],
"duration": 19997,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Server Login MM-T4675_1 - should be able to connect to a server, log in, and show channel list screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4675_1 - should be able to connect to a server, log in, and show channel list screen"
},
{
"ancestorTitles": [
"Smoke Test - Server Login"
],
"duration": 29769,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Server Login MM-T4675_2 - should be able to add a new server and log-in-to/log-out-from the new server",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4675_2 - should be able to add a new server and log-in-to/log-out-from the new server"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990278140,
"runtime": 125062,
"slow": true,
"start": 1765990153078
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/save_and_unsave_message.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Save and Unsave Message"
],
"duration": 25052,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Save and Unsave Message MM-T4864_1 - should be able to save/unsave a message via post options on channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4864_1 - should be able to save/unsave a message via post options on channel screen"
},
{
"ancestorTitles": [
"Messaging - Save and Unsave Message"
],
"duration": 13887,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: No views in hierarchy found matching: (view.getTag() is \"post_options.save_post.option\" and view has effective visibility <VISIBLE>)\n\n\nHINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/save_and_unsave_message.e2e.ts:96:48)"
],
"fullName": "Messaging - Save and Unsave Message MM-T4864_2 - should be able to save/unsave a message via post options on thread screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4864_2 - should be able to save/unsave a message via post options on thread screen"
}
],
"failureMessage": " ● Messaging - Save and Unsave Message › MM-T4864_2 - should be able to save/unsave a message via post options on thread screen\n\n Test Failed: No views in hierarchy found matching: (view.getTag() is \"post_options.save_post.option\" and view has effective visibility <VISIBLE>)\n\n\n HINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n\n \u001b[0m \u001b[90m 94 |\u001b[39m \u001b[36mawait\u001b[39m postListPostItem\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 95 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mThreadScreen\u001b[39m\u001b[33m.\u001b[39mopenPostOptionsFor(post\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m message)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 96 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mPostOptionsScreen\u001b[39m\u001b[33m.\u001b[39msavePostOption\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 97 |\u001b[39m\n \u001b[90m 98 |\u001b[39m \u001b[90m// * Verify saved text is displayed on the post pre-header\u001b[39m\n \u001b[90m 99 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/messaging/save_and_unsave_message.e2e.ts:96:48)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/save_and_unsave_message.e2e.ts:52:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/save_and_unsave_message.e2e.ts:52:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990387510,
"runtime": 109270,
"slow": true,
"start": 1765990278240
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 20489,
"failureDetails": [],
"failureMessages": [],
"fullName": "Scheduled Draft, MM-T5762 should be able to create a scheduled message",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5762 should be able to create a scheduled message"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 21344,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at ChannelScreen.openReplyThreadFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:96:9)"
],
"fullName": "Scheduled Draft, MM-T5767 should be able to create a scheduled message under a threaded post",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5767 should be able to create a scheduled message under a threaded post"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 10919,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Scheduled Draft, MM-T5731 should be able to Delete a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5731 should be able to Delete a scheduled Message"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 10765,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Scheduled Draft, MM-T5730 should be able to Send a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5730 should be able to Send a scheduled Message"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 10784,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Scheduled Draft, MM-T5720 should be able to Reschedule a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5720 should be able to Reschedule a scheduled Message"
}
],
"failureMessage": " ● Scheduled Draft, › MM-T5767 should be able to create a scheduled message under a threaded post\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at ChannelScreen.openReplyThreadFor (support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:96:9)\n\n ● Scheduled Draft, › MM-T5731 should be able to Delete a scheduled Message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n\n ● Scheduled Draft, › MM-T5730 should be able to Send a scheduled Message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n\n ● Scheduled Draft, › MM-T5720 should be able to Reschedule a scheduled Message\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:59:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:64:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/scheduled_messages/create_schedule_message.e2e.ts:64:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990487300,
"runtime": 99660,
"slow": true,
"start": 1765990387640
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/search/cross_team_search.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Search - Cross Team Search"
],
"duration": 65350,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Cross Team Search MM-T5827 - should be able to search messages across multiple teams and navigate to results",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5827 - should be able to search messages across multiple teams and navigate to results"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990645579,
"runtime": 158110,
"slow": true,
"start": 1765990487469
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/search/pinned_messages.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 10096,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Pinned Messages MM-T4918_1 - should match elements on pinned messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4918_1 - should match elements on pinned messages screen"
},
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 23605,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Pinned Messages MM-T4918_2 - should be able to display a pinned message in pinned messages screen and navigate to message channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4918_2 - should be able to display a pinned message in pinned messages screen and navigate to message channel"
},
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 34847,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Pinned Messages MM-T4918_3 - should be able to edit, reply to, and delete a pinned message from pinned messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4918_3 - should be able to edit, reply to, and delete a pinned message from pinned messages screen"
},
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 21803,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Pinned Messages MM-T4918_4 - should be able to unpin a message from pinned messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4918_4 - should be able to unpin a message from pinned messages screen"
},
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 35981,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Pinned Messages MM-T4918_5 - should be able to save/unsave a pinned message from pinned messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4918_5 - should be able to save/unsave a pinned message from pinned messages screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990784352,
"runtime": 138664,
"slow": true,
"start": 1765990645688
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/search/recent_mentions.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 1760,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Recent Mentions MM-T4909_1 - should match elements on recent mentions screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4909_1 - should match elements on recent mentions screen"
},
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 20116,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Recent Mentions MM-T4909_2 - should be able to display a recent mention in recent mentions screen and navigate to message channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4909_2 - should be able to display a recent mention in recent mentions screen and navigate to message channel"
},
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 27871,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Recent Mentions MM-T4909_3 - should be able to edit, reply to, and delete a recent mention from recent mentions screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4909_3 - should be able to edit, reply to, and delete a recent mention from recent mentions screen"
},
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 20016,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Recent Mentions MM-T4909_4 - should be able to save/unsave a recent mention from recent mentions screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4909_4 - should be able to save/unsave a recent mention from recent mentions screen"
},
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 35600,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Recent Mentions MM-T4909_5 - should be able to pin/unpin a recent mention from recent mentions screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4909_5 - should be able to pin/unpin a recent mention from recent mentions screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990938487,
"runtime": 154045,
"slow": true,
"start": 1765990784442
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/search/saved_messages.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 1773,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Saved Messages MM-T4910_1 - should match elements on saved messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4910_1 - should match elements on saved messages screen"
},
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 25723,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Saved Messages MM-T4910_2 - should be able to display a saved message in saved messages screen and navigate to message channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4910_2 - should be able to display a saved message in saved messages screen and navigate to message channel"
},
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 32707,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Saved Messages MM-T4910_3 - should be able to edit, reply to, and delete a saved message from saved messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4910_3 - should be able to edit, reply to, and delete a saved message from saved messages screen"
},
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 20461,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Saved Messages MM-T4910_4 - should be able to unsave a message from saved messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4910_4 - should be able to unsave a message from saved messages screen"
},
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 40183,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Saved Messages MM-T4910_5 - should be able to pin/unpin a saved message from saved messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4910_5 - should be able to pin/unpin a saved message from saved messages screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 12,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991299000,
"runtime": 360343,
"slow": true,
"start": 1765990938657
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/search/search_messages.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 2612,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_1 - should match elements on search messages screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_1 - should match elements on search messages screen"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 22882,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_2 - should be able to search messages from a specific user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_2 - should be able to search messages from a specific user"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 21392,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_3 - should be able to search messages in a specific channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_3 - should be able to search messages in a specific channel"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 26138,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_4 - should be able to search messages excluding search terms",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_4 - should be able to search messages excluding search terms"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 26075,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_5 - should be able to search messages with phrases",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_5 - should be able to search messages with phrases"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 29674,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_6 - should be able to search messages using combination of modifiers",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_6 - should be able to search messages using combination of modifiers"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 28431,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_7 - should be able to search messages using recent searches",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_7 - should be able to search messages using recent searches"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 23333,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_8 - should be able to search messages on a another joined team",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_8 - should be able to search messages on a another joined team"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 17253,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_9 - should show empty search results screen when search result is empty",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_9 - should show empty search results screen when search result is empty"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 43258,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_10 - should be able to edit, reply to, and delete a searched message from search results screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_10 - should be able to edit, reply to, and delete a searched message from search results screen"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 34936,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_11 - should be able to save/unsave a searched message from search results screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_11 - should be able to save/unsave a searched message from search results screen"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 50610,
"failureDetails": [],
"failureMessages": [],
"fullName": "Search - Search Messages MM-T5294_12 - should be able to pin/unpin a searched message from search results screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5294_12 - should be able to pin/unpin a searched message from search results screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991332625,
"runtime": 33494,
"slow": true,
"start": 1765991299131
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/connect_to_server.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Server Login - Connect to Server"
],
"duration": 3714,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Connect to Server MM-T4676_1 - should match elements on server screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4676_1 - should match elements on server screen"
},
{
"ancestorTitles": [
"Server Login - Connect to Server"
],
"duration": 1346,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Connect to Server MM-T4676_2 - should show disabled connect button on empty server url or server display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4676_2 - should show disabled connect button on empty server url or server display name"
},
{
"ancestorTitles": [
"Server Login - Connect to Server"
],
"duration": 3002,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Connect to Server MM-T4676_3 - should show invalid url error on invalid server url",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4676_3 - should show invalid url error on invalid server url"
},
{
"ancestorTitles": [
"Server Login - Connect to Server"
],
"duration": 2840,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Connect to Server MM-T4676_4 - should show connection error on invalid ssl or invalid host",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4676_4 - should show connection error on invalid ssl or invalid host"
},
{
"ancestorTitles": [
"Server Login - Connect to Server"
],
"duration": 7140,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Connect to Server MM-T4676_5 - should show login screen on successful connection to server",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4676_5 - should show login screen on successful connection to server"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991384374,
"runtime": 51652,
"slow": true,
"start": 1765991332722
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/login_by_email.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Server Login - Login by Email"
],
"duration": 4515,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Login by Email MM-T4677_1 - should match elements on login screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4677_1 - should match elements on login screen"
},
{
"ancestorTitles": [
"Server Login - Login by Email"
],
"duration": 7288,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Login by Email MM-T4677_2 - should show disabled signin button on empty username or password",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4677_2 - should show disabled signin button on empty username or password"
},
{
"ancestorTitles": [
"Server Login - Login by Email"
],
"duration": 7721,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Login by Email MM-T4677_3 - should show incorrect combination error on incorrect credentials",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4677_3 - should show incorrect combination error on incorrect credentials"
},
{
"ancestorTitles": [
"Server Login - Login by Email"
],
"duration": 10210,
"failureDetails": [],
"failureMessages": [],
"fullName": "Server Login - Login by Email MM-T4677_4 - should show channel list screen on successful login",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4677_4 - should show channel list screen on successful login"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990197937,
"runtime": 146747,
"slow": true,
"start": 1765990051190
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_delete.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Delete"
],
"duration": 19445,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Delete MM-T4784_1 - should be able to delete a post message and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4784_1 - should be able to delete a post message and confirm"
},
{
"ancestorTitles": [
"Messaging - Message Delete"
],
"duration": 19671,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Delete MM-T4784_2 - should be able to delete a post message and cancel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4784_2 - should be able to delete a post message and cancel"
},
{
"ancestorTitles": [
"Messaging - Message Delete"
],
"duration": 23146,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Delete MM-T4784_3 - should be able to delete a post message from reply thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4784_3 - should be able to delete a post message from reply thread"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990282904,
"runtime": 84806,
"slow": true,
"start": 1765990198098
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_draft.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 21487,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T4781_1 - should be able to create a message draft",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4781_1 - should be able to create a message draft"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 8678,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T4781_2 - should save message draft when app is closed then re-opened",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4781_2 - should save message draft when app is closed then re-opened"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 9802,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T4781_3 - should show character count warning when message exceeds character limit",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4781_3 - should show character count warning when message exceeds character limit"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 10620,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_draft.e2e.ts:47:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Message Draft MM-T4781_4 - should be able to create a message draft from reply thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4781_4 - should be able to create a message draft from reply thread"
}
],
"failureMessage": " ● Messaging - Message Draft › MM-T4781_4 - should be able to create a message draft from reply thread\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/message_draft.e2e.ts:47:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/message_draft.e2e.ts:52:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_draft.e2e.ts:52:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990361752,
"runtime": 78737,
"slow": true,
"start": 1765990283015
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_edit.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Edit"
],
"duration": 22650,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_edit.e2e.ts:67:9)"
],
"fullName": "Messaging - Message Edit MM-T4783_1 - should be able to edit a post message and save",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4783_1 - should be able to edit a post message and save"
},
{
"ancestorTitles": [
"Messaging - Message Edit"
],
"duration": 10881,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_edit.e2e.ts:47:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Message Edit MM-T4783_2 - should be able to edit a post message and cancel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4783_2 - should be able to edit a post message and cancel"
},
{
"ancestorTitles": [
"Messaging - Message Edit"
],
"duration": 10739,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_edit.e2e.ts:47:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Message Edit MM-T4783_3 - should be able to edit a post message from reply thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4783_3 - should be able to edit a post message from reply thread"
}
],
"failureMessage": " ● Messaging - Message Edit › MM-T4783_1 - should be able to edit a post message and save\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at Object.<anonymous> (test/products/channels/messaging/message_edit.e2e.ts:67:9)\n\n ● Messaging - Message Edit › MM-T4783_2 - should be able to edit a post message and cancel\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/message_edit.e2e.ts:47:33)\n\n ● Messaging - Message Edit › MM-T4783_3 - should be able to edit a post message from reply thread\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/message_edit.e2e.ts:47:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/message_edit.e2e.ts:52:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_edit.e2e.ts:52:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990486391,
"runtime": 124527,
"slow": true,
"start": 1765990361864
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_local_drafts.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 16380,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5637 should be able to send the draft message from Draft screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5637 should be able to send the draft message from Draft screen"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 13290,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5638 should be able to swipe left and delete a draft message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5638 should be able to swipe left and delete a draft message"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 13312,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5638 should be able to delete a draft message from long press Draft actions",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5638 should be able to delete a draft message from long press Draft actions"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 19519,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5636 should be able to Edit a draft message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5636 should be able to Edit a draft message"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 16281,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5668 should be able to verify drafts tab shows message priority \"Important\" and request acknowledgement",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5668 should be able to verify drafts tab shows message priority \"Important\" and request acknowledgement"
},
{
"ancestorTitles": [
"Messaging - Message Draft"
],
"duration": 13377,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Draft MM-T5668 should be able to verify drafts tab shows message priority \"Urgent\" and persistent notification",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5668 should be able to verify drafts tab shows message priority \"Urgent\" and persistent notification"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990733815,
"runtime": 247312,
"slow": true,
"start": 1765990486503
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_permalink.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 18464,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_1 - should render permalink preview modal when posting a message with copied permalink",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_1 - should render permalink preview modal when posting a message with copied permalink"
},
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 26814,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_2 - should copy link and create permalink preview in different channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_2 - should copy link and create permalink preview in different channel"
},
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 34034,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_3 - should navigate to original post when tapping on permalink preview",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_3 - should navigate to original post when tapping on permalink preview"
},
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 46428,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_4 - should update permalink preview when original post is edited",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_4 - should update permalink preview when original post is edited"
},
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 27251,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_6 - should handle permalink preview with long message content",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_6 - should handle permalink preview with long message content"
},
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 60881,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Permalink Preview MM-T4877_7 - should handle permalink preview when original post is deleted",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_7 - should handle permalink preview when original post is deleted"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990793080,
"runtime": 59112,
"slow": true,
"start": 1765990733968
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_post.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Post"
],
"duration": 11232,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Post MM-T4782_1 - should be able to post a message when send button is tapped",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4782_1 - should be able to post a message when send button is tapped"
},
{
"ancestorTitles": [
"Messaging - Message Post"
],
"duration": 14875,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Post MM-T4782_2 - should be able to post a long message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4782_2 - should be able to post a long message"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990878988,
"runtime": 85824,
"slow": true,
"start": 1765990793164
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/message_reply.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Reply"
],
"duration": 22405,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Reply MM-T4785_1 - should be able to reply to a post via post options reply option",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4785_1 - should be able to reply to a post via post options reply option"
},
{
"ancestorTitles": [
"Messaging - Message Reply"
],
"duration": 12279,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Reply MM-T4785_2 - should be able to open reply thread by tapping on the post",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4785_2 - should be able to open reply thread by tapping on the post"
},
{
"ancestorTitles": [
"Messaging - Message Reply"
],
"duration": 17885,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Message Reply MM-T4785_3 - should not have reply option available on reply thread post options",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4785_3 - should not have reply option available on reply thread post options"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990959268,
"runtime": 80157,
"slow": true,
"start": 1765990879111
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 12886,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n at PermalinkScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/permalink.ts:32:44)\n at expectPermalinkTargetMessage (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:69:9)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:92:9)"
],
"fullName": "Messaging - Permalink MM-T4876_1 - should be able to jump to target public channel post by tapping on permalink with team name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4876_1 - should be able to jump to target public channel post by tapping on permalink with team name"
},
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 10750,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:51:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Permalink MM-T4876_2 - should be able to jump to target public channel post by tapping on permalink with _redirect",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4876_2 - should be able to jump to target public channel post by tapping on permalink with _redirect"
},
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 10814,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:51:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Permalink MM-T4876_3 - should be able to jump to target DM post by tapping on permalink with team name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4876_3 - should be able to jump to target DM post by tapping on permalink with team name"
},
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 10618,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:51:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Permalink MM-T4876_4 - should be able to jump to target DM post by tapping on permalink with _redirect",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4876_4 - should be able to jump to target DM post by tapping on permalink with _redirect"
}
],
"failureMessage": " ● Messaging - Permalink › MM-T4876_1 - should be able to jump to target public channel post by tapping on permalink with team name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n \u001b[0m \u001b[90m 30 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 31 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 32 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpermalinkScreen)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 33 |\u001b[39m\n \u001b[90m 34 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpermalinkScreen\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PermalinkScreen.toBeVisible (support/ui/screen/permalink.ts:32:44)\n at expectPermalinkTargetMessage (test/products/channels/messaging/permalink.e2e.ts:69:9)\n at Object.<anonymous> (test/products/channels/messaging/permalink.e2e.ts:92:9)\n\n ● Messaging - Permalink › MM-T4876_2 - should be able to jump to target public channel post by tapping on permalink with _redirect\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/permalink.e2e.ts:51:33)\n\n ● Messaging - Permalink › MM-T4876_3 - should be able to jump to target DM post by tapping on permalink with team name\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/permalink.e2e.ts:51:33)\n\n ● Messaging - Permalink › MM-T4876_4 - should be able to jump to target DM post by tapping on permalink with _redirect\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/permalink.e2e.ts:51:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/permalink.e2e.ts:56:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/permalink.e2e.ts:56:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991074470,
"runtime": 115058,
"slow": true,
"start": 1765990959412
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/pin_and_unpin_message.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Pin and Unpin Message"
],
"duration": 41604,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Pin and Unpin Message MM-T4865_1 - should be able to pin/unpin a message via post options on channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4865_1 - should be able to pin/unpin a message via post options on channel screen"
},
{
"ancestorTitles": [
"Messaging - Pin and Unpin Message"
],
"duration": 41033,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Pin and Unpin Message MM-T4865_2 - should be able to pin/unpin a message via post options on thread screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4865_2 - should be able to pin/unpin a message via post options on thread screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990401497,
"runtime": 121598,
"slow": true,
"start": 1765990279899
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/follow_and_unfollow_messsage.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Follow and Unfollow Message"
],
"duration": 21408,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Follow and Unfollow Message MM-T4863_1 - should be able to follow/unfollow a message via post options",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4863_1 - should be able to follow/unfollow a message via post options"
},
{
"ancestorTitles": [
"Messaging - Follow and Unfollow Message"
],
"duration": 15554,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Follow and Unfollow Message MM-T4863_2 - should be able to unfollow a message via post footer",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4863_2 - should be able to unfollow a message via post footer"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990445572,
"runtime": 43944,
"slow": true,
"start": 1765990401628
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_block_quote.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Block Quote"
],
"duration": 11440,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Block Quote MM-T4898_1 - should be able to display markdown block quote",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4898_1 - should be able to display markdown block quote"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990502306,
"runtime": 56636,
"slow": true,
"start": 1765990445670
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_code.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Code"
],
"duration": 14400,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Code MM-T4895_1 - should be able to display markdown code block",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4895_1 - should be able to display markdown code block"
},
{
"ancestorTitles": [
"Messaging - Markdown Code"
],
"duration": 10760,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Code MM-T4895_2- should be able to display markdown html",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4895_2- should be able to display markdown html"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990547099,
"runtime": 44665,
"slow": true,
"start": 1765990502434
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_heading.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Heading"
],
"duration": 10920,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Heading MM-T4893_1 - should be able to display markdown heading",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4893_1 - should be able to display markdown heading"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990600783,
"runtime": 53548,
"slow": true,
"start": 1765990547235
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_image.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Image"
],
"duration": 10747,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: com.facebook.react.views.view.ReactViewGroup{c5c80c1 V.E...... ........ 0,0-0,0 #757}\nView Details: ReactViewGroup{id=1879, visibility=VISIBLE, width=0, height=0, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=markdown_image, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_image.e2e.ts:60:45)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Messaging - Markdown Image MM-T4896_1 - should be able to display markdown image",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4896_1 - should be able to display markdown image"
},
{
"ancestorTitles": [
"Messaging - Markdown Image"
],
"duration": 10902,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_image.e2e.ts:43:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Markdown Image MM-T4896_2 - should be able to display markdown image with link",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4896_2 - should be able to display markdown image with link"
}
],
"failureMessage": " ● Messaging - Markdown Image › MM-T4896_1 - should be able to display markdown image\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: com.facebook.react.views.view.ReactViewGroup{c5c80c1 V.E...... ........ 0,0-0,0 #757}\n View Details: ReactViewGroup{id=1879, visibility=VISIBLE, width=0, height=0, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=markdown_image, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1}\n\n \u001b[0m \u001b[90m 58 |\u001b[39m \u001b[36mconst\u001b[39m {post} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mPost\u001b[39m\u001b[33m.\u001b[39mapiGetLastPostInChannel(siteOneUrl\u001b[33m,\u001b[39m testChannel\u001b[33m.\u001b[39mid)\u001b[33m;\u001b[39m\n \u001b[90m 59 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItemImage} \u001b[33m=\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(post\u001b[33m.\u001b[39mid)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 60 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemImage)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 61 |\u001b[39m\n \u001b[90m 62 |\u001b[39m \u001b[90m// # Go back to channel list screen\u001b[39m\n \u001b[90m 63 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mback()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/messaging/markdown_image.e2e.ts:60:45)\n\n ● Messaging - Markdown Image › MM-T4896_2 - should be able to display markdown image with link\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/markdown_image.e2e.ts:43:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/markdown_image.e2e.ts:48:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_image.e2e.ts:48:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990655684,
"runtime": 54771,
"slow": true,
"start": 1765990600913
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_latex.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Latex"
],
"duration": 11906,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Latex MM-T4900_1 - should be able to display markdown latex code block",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4900_1 - should be able to display markdown latex code block"
},
{
"ancestorTitles": [
"Messaging - Markdown Latex"
],
"duration": 10743,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Latex MM-T4900_2 - should be able to display markdown inline latex",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4900_2 - should be able to display markdown inline latex"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990707097,
"runtime": 51296,
"slow": true,
"start": 1765990655801
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_list.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown List"
],
"duration": 11413,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown List MM-T4894_1 - should be able to display markdown bullet list",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4894_1 - should be able to display markdown bullet list"
},
{
"ancestorTitles": [
"Messaging - Markdown List"
],
"duration": 10794,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown List MM-T4894_2 - should be able to display markdown ordered list",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4894_2 - should be able to display markdown ordered list"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990747923,
"runtime": 40715,
"slow": true,
"start": 1765990707208
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_separator.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Separator"
],
"duration": 8620,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Separator MM-T4897_1 - should be able to display markdown separator",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4897_1 - should be able to display markdown separator"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990840263,
"runtime": 92227,
"slow": true,
"start": 1765990748036
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/markdown_table.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Markdown Table"
],
"duration": 9591,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Table MM-T4899_1 - should be able to display markdown table",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4899_1 - should be able to display markdown table"
},
{
"ancestorTitles": [
"Messaging - Markdown Table"
],
"duration": 10664,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Table MM-T4899_2 - should be able to display markdown table with long text wrapped properly",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4899_2 - should be able to display markdown table with long text wrapped properly"
},
{
"ancestorTitles": [
"Messaging - Markdown Table"
],
"duration": 13554,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Table MM-T4899_3 - should be able to open markdown table in full view and allow horizontal scroll",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4899_3 - should be able to open markdown table in full view and allow horizontal scroll"
},
{
"ancestorTitles": [
"Messaging - Markdown Table"
],
"duration": 10422,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Table MM-T4899_4 - should be able to open markdown table in full view and allow vertical scroll",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4899_4 - should be able to open markdown table in full view and allow vertical scroll"
},
{
"ancestorTitles": [
"Messaging - Markdown Table"
],
"duration": 15437,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Table MM-T4899_5 - should be able to open markdown table in full view and allow both horizontal and vertical scrolls",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4899_5 - should be able to open markdown table in full view and allow both horizontal and vertical scrolls"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990800199,
"runtime": 143954,
"slow": true,
"start": 1765990656245
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/leave_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Leave Channel"
],
"duration": 19701,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Leave Channel MM-T4931_1 - should be able to leave a channel from channel info screen and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4931_1 - should be able to leave a channel from channel info screen and confirm"
},
{
"ancestorTitles": [
"Channels - Leave Channel"
],
"duration": 19786,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Leave Channel MM-T4931_2 - should be able to leave a channel from channel info screen and cancel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4931_2 - should be able to leave a channel from channel info screen and cancel"
},
{
"ancestorTitles": [
"Channels - Leave Channel"
],
"duration": 17518,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Leave Channel MM-T4931_3 - should be able to leave a channel from channel quick actions",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4931_3 - should be able to leave a channel from channel quick actions"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990864545,
"runtime": 64165,
"slow": true,
"start": 1765990800380
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/manage_own_channel_membership.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Manage Own Channel Membership"
],
"duration": 29604,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Manage Own Channel Membership MM-66375 - should be able to see and manage own membership in channel members list",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-66375 - should be able to see and manage own membership in channel members list"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990929632,
"runtime": 64943,
"slow": true,
"start": 1765990864689
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/mute_and_unmute_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Mute and Unmute Channel"
],
"duration": 18212,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Mute and Unmute Channel MM-T4930_1 - should be able to mute/unmute a channel from channel quick actions",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4930_1 - should be able to mute/unmute a channel from channel quick actions"
},
{
"ancestorTitles": [
"Channels - Mute and Unmute Channel"
],
"duration": 12797,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Mute and Unmute Channel MM-T4930_2 - should be able to mute/unmute a channel from channel info screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4930_2 - should be able to mute/unmute a channel from channel info screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991080648,
"runtime": 150905,
"slow": true,
"start": 1765990929743
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/unarchive_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Unarchive Channel"
],
"duration": 58354,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Unarchive Channel MM-T4944_1 - should be able to unarchive a public channel and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4944_1 - should be able to unarchive a public channel and confirm"
},
{
"ancestorTitles": [
"Channels - Unarchive Channel"
],
"duration": 56570,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Unarchive Channel MM-T4944_2 - should be able to unarchive a private channel and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4944_2 - should be able to unarchive a private channel and confirm"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991123219,
"runtime": 42427,
"slow": true,
"start": 1765991080792
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/localization/language.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Localization"
],
"duration": 5289,
"failureDetails": [],
"failureMessages": [],
"fullName": "Localization MM-T303 - Text looks correct when viewed in a non-English language",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T303 - Text looks correct when viewed in a non-English language"
},
{
"ancestorTitles": [
"Localization"
],
"duration": 4919,
"failureDetails": [],
"failureMessages": [],
"fullName": "Localization MM-T304 - RN: No crash when setting language to zh-TW (Chinese Traditional)",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T304 - RN: No crash when setting language to zh-TW (Chinese Traditional)"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991205919,
"runtime": 82598,
"slow": true,
"start": 1765991123321
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/at_mention.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - At-Mention"
],
"duration": 15840,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - At-Mention MM-T4874_1 - should post at-mention as lowercase",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4874_1 - should post at-mention as lowercase"
},
{
"ancestorTitles": [
"Messaging - At-Mention"
],
"duration": 20509,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - At-Mention MM-T4874_2 - should display confirmation dialog when posting @all, @channel, and @here",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4874_2 - should display confirmation dialog when posting @all, @channel, and @here"
},
{
"ancestorTitles": [
"Messaging - At-Mention"
],
"duration": 13035,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - At-Mention MM-T4874_3 - should be able to open user profile by tapping on at-mention",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4874_3 - should be able to open user profile by tapping on at-mention"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991270462,
"runtime": 64387,
"slow": true,
"start": 1765991206075
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/channel_link.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Channel Link"
],
"duration": 14248,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Channel Link MM-T4877_1 - should be able to open joined channel by tapping on channel link from main channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_1 - should be able to open joined channel by tapping on channel link from main channel"
},
{
"ancestorTitles": [
"Messaging - Channel Link"
],
"duration": 16787,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Channel Link MM-T4877_2 - should be able to open joined channel by tapping on channel link from reply thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4877_2 - should be able to open joined channel by tapping on channel link from reply thread"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991328400,
"runtime": 57759,
"slow": true,
"start": 1765991270641
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/channel_mention.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Channel Mention"
],
"duration": 13397,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Channel Mention MM-T4875_1 - should post channel mention as channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4875_1 - should post channel mention as channel display name"
},
{
"ancestorTitles": [
"Messaging - Channel Mention"
],
"duration": 9799,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" and view has effective visibility <VISIBLE>)' doesn't match the selected view.\nExpected: (an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" view.getText() was \"Channel 7d04ad\" transformed text was \"Channel 7d04ad\"\nView Details: ReactTextView{id=1939, visibility=VISIBLE, width=392, height=66, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=navigation.header.title, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=Channel 7d04ad, input-type=0, ime-target=false, has-links=false}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/channel_mention.e2e.ts:86:49)"
],
"fullName": "Messaging - Channel Mention MM-T4875_2 - should be able to open joined channel by tapping on channel mention",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4875_2 - should be able to open joined channel by tapping on channel mention"
}
],
"failureMessage": " ● Messaging - Channel Mention › MM-T4875_2 - should be able to open joined channel by tapping on channel mention\n\n Test Failed: '(an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" and view has effective visibility <VISIBLE>)' doesn't match the selected view.\n Expected: (an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Channel b98c18\" view.getText() was \"Channel 7d04ad\" transformed text was \"Channel 7d04ad\"\n View Details: ReactTextView{id=1939, visibility=VISIBLE, width=392, height=66, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=navigation.header.title, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=Channel 7d04ad, input-type=0, ime-target=false, has-links=false}\n\n \u001b[0m \u001b[90m 84 |\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[90m// * Verify redirected to target channel\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 86 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mheaderTitle)\u001b[33m.\u001b[39mtoHaveText(targetChannel\u001b[33m.\u001b[39mdisplay_name)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 87 |\u001b[39m\n \u001b[90m 88 |\u001b[39m \u001b[90m// # Go back to channel list screen\u001b[39m\n \u001b[90m 89 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mback()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/messaging/channel_mention.e2e.ts:86:49)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/channel_mention.e2e.ts:54:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/channel_mention.e2e.ts:54:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991418961,
"runtime": 90448,
"slow": true,
"start": 1765991328513
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Emojis and Reactions"
],
"duration": 22814,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts:64:9)"
],
"fullName": "Messaging - Emojis and Reactions MM-T4862_1 - should be able to view recent reactions and add new reaction via post options",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4862_1 - should be able to view recent reactions and add new reaction via post options"
},
{
"ancestorTitles": [
"Messaging - Emojis and Reactions"
],
"duration": 10778,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Emojis and Reactions MM-T4862_2 - should be able to long press on a reaction to view the list of users who reacted",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4862_2 - should be able to long press on a reaction to view the list of users who reacted"
},
{
"ancestorTitles": [
"Messaging - Emojis and Reactions"
],
"duration": 10749,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Emojis and Reactions MM-T4862_3 - should be able to include emojis in a message and be able to find them in emoji bar and recently used section",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4862_3 - should be able to include emojis in a message and be able to find them in emoji bar and recently used section"
},
{
"ancestorTitles": [
"Messaging - Emojis and Reactions"
],
"duration": 10653,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Messaging - Emojis and Reactions MM-T4862_4 - should display empty search state for emoji picker",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4862_4 - should display empty search state for emoji picker"
}
],
"failureMessage": " ● Messaging - Emojis and Reactions › MM-T4862_1 - should be able to view recent reactions and add new reaction via post options\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at Object.<anonymous> (test/products/channels/messaging/emojis_and_reactions.e2e.ts:64:9)\n\n ● Messaging - Emojis and Reactions › MM-T4862_2 - should be able to long press on a reaction to view the list of users who reacted\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n\n ● Messaging - Emojis and Reactions › MM-T4862_3 - should be able to include emojis in a message and be able to find them in emoji bar and recently used section\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n\n ● Messaging - Emojis and Reactions › MM-T4862_4 - should display empty search state for emoji picker\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/messaging/emojis_and_reactions.e2e.ts:50:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/messaging/emojis_and_reactions.e2e.ts:55:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/messaging/emojis_and_reactions.e2e.ts:55:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990317516,
"runtime": 119598,
"slow": true,
"start": 1765990197918
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_info.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Channel Info"
],
"duration": 10795,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at ChannelScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_info.e2e.ts:52:29)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:316:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Channel Info MM-T4928_1 - should match elements on channel info screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4928_1 - should match elements on channel info screen"
},
{
"ancestorTitles": [
"Channels - Channel Info"
],
"duration": 10652,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at ChannelScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_info.e2e.ts:81:29)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:316:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Channel Info MM-T4928_2 - should be able to view channel info by tapping intro channel info action",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4928_2 - should be able to view channel info by tapping intro channel info action"
},
{
"ancestorTitles": [
"Channels - Channel Info"
],
"duration": 10747,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at ChannelScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_info.e2e.ts:94:29)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:316:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Channel Info MM-T4928_3 - should be able to view channel info from channel quick actions",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4928_3 - should be able to view channel info from channel quick actions"
}
],
"failureMessage": " ● Channels - Channel Info › MM-T4928_1 - should match elements on channel info screen\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 155 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m (categoryKey\u001b[33m:\u001b[39m string\u001b[33m,\u001b[39m channelName\u001b[33m:\u001b[39m string) \u001b[33m=>\u001b[39m {\n \u001b[90m 156 |\u001b[39m \u001b[90m// # Open channel screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 157 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 158 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName)\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 159 |\u001b[39m \u001b[36mtry\u001b[39m {\n \u001b[90m 160 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mscheduledPostTooltipCloseButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.open (support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (test/products/channels/channels/channel_info.e2e.ts:52:29)\n\n ● Channels - Channel Info › MM-T4928_2 - should be able to view channel info by tapping intro channel info action\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 155 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m (categoryKey\u001b[33m:\u001b[39m string\u001b[33m,\u001b[39m channelName\u001b[33m:\u001b[39m string) \u001b[33m=>\u001b[39m {\n \u001b[90m 156 |\u001b[39m \u001b[90m// # Open channel screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 157 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 158 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName)\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 159 |\u001b[39m \u001b[36mtry\u001b[39m {\n \u001b[90m 160 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mscheduledPostTooltipCloseButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.open (support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (test/products/channels/channels/channel_info.e2e.ts:81:29)\n\n ● Channels - Channel Info › MM-T4928_3 - should be able to view channel info from channel quick actions\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 155 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m (categoryKey\u001b[33m:\u001b[39m string\u001b[33m,\u001b[39m channelName\u001b[33m:\u001b[39m string) \u001b[33m=>\u001b[39m {\n \u001b[90m 156 |\u001b[39m \u001b[90m// # Open channel screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 157 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 158 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName)\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 159 |\u001b[39m \u001b[36mtry\u001b[39m {\n \u001b[90m 160 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mscheduledPostTooltipCloseButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.open (support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (test/products/channels/channels/channel_info.e2e.ts:94:29)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 9,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990416704,
"runtime": 99122,
"slow": true,
"start": 1765990317582
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_list.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 573,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_1 - should match elements on channel list screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_1 - should match elements on channel list screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 26626,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_2 - should be able to switch between channels",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_2 - should be able to switch between channels"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 12039,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_3 - should be able to collapse and expand categories",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_3 - should be able to collapse and expand categories"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 3269,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_4 - should be able to go to browse channels screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_4 - should be able to go to browse channels screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 5923,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_5 - should be able to go to create direct message screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_5 - should be able to go to create direct message screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 3103,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_6 - should be able to go to create channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_6 - should be able to go to create channel screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 1477,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_7 - should be able to go to global threads screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_7 - should be able to go to global threads screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 1574,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_8 - should be able to go to find channels screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_8 - should be able to go to find channels screen"
},
{
"ancestorTitles": [
"Channels - Channel List"
],
"duration": 10744,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel List MM-T4728_9 - should be able to switch between teams",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4728_9 - should be able to switch between teams"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990473708,
"runtime": 56890,
"slow": true,
"start": 1765990416818
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_post_list.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Channel Post List"
],
"duration": 11352,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_post_list.e2e.ts:71:53)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Channels - Channel Post List MM-T4773_1 - should match elements on channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4773_1 - should match elements on channel screen"
},
{
"ancestorTitles": [
"Channels - Channel Post List"
],
"duration": 10729,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_post_list.e2e.ts:44:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Channel Post List MM-T4773_2 - should be able to add a message to post list and delete a message from post list",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4773_2 - should be able to add a message to post list and delete a message from post list"
}
],
"failureMessage": " ● Channels - Channel Post List › MM-T4773_1 - should match elements on channel screen\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: was null\n\n \u001b[0m \u001b[90m 69 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39matInputQuickAction)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 70 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mslashInputQuickAction)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 71 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mfileQuickAction)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 72 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mimageQuickAction)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 73 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mcameraQuickAction)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 74 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39msendButtonDisabled)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/channels/channel_post_list.e2e.ts:71:53)\n\n ● Channels - Channel Post List › MM-T4773_2 - should be able to add a message to post list and delete a message from post list\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/channels/channel_post_list.e2e.ts:44:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/channels/channel_post_list.e2e.ts:49:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/channel_post_list.e2e.ts:49:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990544118,
"runtime": 70277,
"slow": true,
"start": 1765990473841
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/convert_to_private_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Convert to Private Channel"
],
"duration": 20806,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Convert to Private Channel MM-T4972_1 - should be able to convert public channel to private and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4972_1 - should be able to convert public channel to private and confirm"
},
{
"ancestorTitles": [
"Channels - Convert to Private Channel"
],
"duration": 13922,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Convert to Private Channel MM-T4972_2 - should be able to convert public channel to private and cancel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4972_2 - should be able to convert public channel to private and cancel"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990612999,
"runtime": 68766,
"slow": true,
"start": 1765990544233
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Create Channel and Edit Channel Header"
],
"duration": 2840,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Channel and Edit Channel Header MM-T4731_1 - should match elements on create channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4731_1 - should match elements on create channel screen"
},
{
"ancestorTitles": [
"Channels - Create Channel and Edit Channel Header"
],
"duration": 21735,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at CreateOrEditChannelScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/create_or_edit_channel.ts:46:65)\n at CreateOrEditChannelScreen.openEditChannelHeader (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/create_or_edit_channel.ts:76:21)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:99:9)"
],
"fullName": "Channels - Create Channel and Edit Channel Header MM-T4731_2 - should be able to create a public channel and edit the channel header",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4731_2 - should be able to create a public channel and edit the channel header"
},
{
"ancestorTitles": [
"Channels - Create Channel and Edit Channel Header"
],
"duration": 10716,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:39:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Create Channel and Edit Channel Header MM-T4731_3 - should be able to create a private channel and edit the channel header",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4731_3 - should be able to create a private channel and edit the channel header"
}
],
"failureMessage": " ● Channels - Create Channel and Edit Channel Header › MM-T4731_2 - should be able to create a public channel and edit the channel header\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 44 |\u001b[39m\n \u001b[90m 45 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 46 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mcreateOrEditChannelScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 47 |\u001b[39m\n \u001b[90m 48 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mcreateOrEditChannelScreen\u001b[33m;\u001b[39m\n \u001b[90m 49 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at CreateOrEditChannelScreen.toBeVisible (support/ui/screen/create_or_edit_channel.ts:46:65)\n at CreateOrEditChannelScreen.openEditChannelHeader (support/ui/screen/create_or_edit_channel.ts:76:21)\n at Object.<anonymous> (test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:99:9)\n\n ● Channels - Create Channel and Edit Channel Header › MM-T4731_3 - should be able to create a private channel and edit the channel header\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:39:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:44:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/create_channel_and_edit_channel_header.e2e.ts:44:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990776877,
"runtime": 163715,
"slow": true,
"start": 1765990613162
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/create_direct_message.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Create Direct Message"
],
"duration": 17428,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Direct Message MM-T4730_1 - should match elements on create direct message screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4730_1 - should match elements on create direct message screen"
},
{
"ancestorTitles": [
"Channels - Create Direct Message"
],
"duration": 28248,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Direct Message MM-T4730_2 - should be able to create a direct message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4730_2 - should be able to create a direct message"
},
{
"ancestorTitles": [
"Channels - Create Direct Message"
],
"duration": 33559,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Direct Message MM-T4730_3 - should be able to create a group message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4730_3 - should be able to create a group message"
},
{
"ancestorTitles": [
"Channels - Create Direct Message"
],
"duration": 17678,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Direct Message MM-T4730_4 - should display empty search state for create direct message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4730_4 - should display empty search state for create direct message"
},
{
"ancestorTitles": [
"Channels - Create Direct Message"
],
"duration": 33482,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Create Direct Message MM-T63374 - should not display deactivated users in the create direct message screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T63374 - should not display deactivated users in the create direct message screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990906322,
"runtime": 129346,
"slow": true,
"start": 1765990776976
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/edit_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Edit Channel"
],
"duration": 5824,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Edit Channel MM-T4906_1 - should match elements on edit channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4906_1 - should match elements on edit channel screen"
},
{
"ancestorTitles": [
"Channels - Edit Channel"
],
"duration": 12742,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Edit Channel MM-T4906_2 - should be able to edit public channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4906_2 - should be able to edit public channel"
},
{
"ancestorTitles": [
"Channels - Edit Channel"
],
"duration": 32615,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Edit Channel MM-T4906_3 - should be able edit direct message channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4906_3 - should be able edit direct message channel"
},
{
"ancestorTitles": [
"Channels - Edit Channel"
],
"duration": 38389,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Edit Channel MM-T4906_4 - should be able edit group message channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4906_4 - should be able edit group message channel"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991016728,
"runtime": 110268,
"slow": true,
"start": 1765990906460
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/favorite_and_unfavorite_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Favorite and Unfavorite Channel"
],
"duration": 24159,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Favorite and Unfavorite Channel MM-T4929_1 - should be able to favorite/unfavorite a channel from channel quick actions",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4929_1 - should be able to favorite/unfavorite a channel from channel quick actions"
},
{
"ancestorTitles": [
"Channels - Favorite and Unfavorite Channel"
],
"duration": 16020,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Favorite and Unfavorite Channel MM-T4929_2 - should be able to favorite/unfavorite a channel from channel info screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4929_2 - should be able to favorite/unfavorite a channel from channel info screen"
},
{
"ancestorTitles": [
"Channels - Favorite and Unfavorite Channel"
],
"duration": 37432,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Favorite and Unfavorite Channel MM-T4929_3 - should be able to favorite/unfavorite a direct message channel from channel intro",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4929_3 - should be able to favorite/unfavorite a direct message channel from channel intro"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991144835,
"runtime": 127949,
"slow": true,
"start": 1765991016886
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/find_channels.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 2111,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Find Channels MM-T4907_1 - should match elements on find channels screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4907_1 - should match elements on find channels screen"
},
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 23172,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Find Channels MM-T4907_2 - should be able to find and navigate to a public channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4907_2 - should be able to find and navigate to a public channel"
},
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 16935,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Find Channels MM-T4907_3 - should display empty search state for find channels",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4907_3 - should display empty search state for find channels"
},
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 14457,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Find Channels MM-T4907_4 - should be able to find direct and group message channels",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4907_4 - should be able to find direct and group message channels"
},
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 26657,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: No views in hierarchy found matching: (view.getTag() is \"find_channels.filtered_list.channel_item.channel-730512\" and view has effective visibility <VISIBLE>)\n\n\nHINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/find_channels.e2e.ts:149:79)"
],
"fullName": "Channels - Find Channels MM-T4907_5 - should be able to find an archived channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4907_5 - should be able to find an archived channel"
},
{
"ancestorTitles": [
"Channels - Find Channels"
],
"duration": 10731,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/find_channels.e2e.ts:50:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Channels - Find Channels MM-T4907_6 - should be able to find a joined private channel and not find an unjoined private channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4907_6 - should be able to find a joined private channel and not find an unjoined private channel"
}
],
"failureMessage": " ● Channels - Find Channels › MM-T4907_5 - should be able to find an archived channel\n\n Test Failed: No views in hierarchy found matching: (view.getTag() is \"find_channels.filtered_list.channel_item.channel-730512\" and view has effective visibility <VISIBLE>)\n\n\n HINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n\n \u001b[0m \u001b[90m 147 |\u001b[39m \u001b[90m// * Verify search returns the target archived channel item\u001b[39m\n \u001b[90m 148 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mFOUR_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 149 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mFindChannelsScreen\u001b[39m\u001b[33m.\u001b[39mgetFilteredChannelItem(archivedChannel\u001b[33m.\u001b[39mname)\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 150 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mFOUR_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 151 |\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[90m// * Verify on archievd channel name\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/channels/find_channels.e2e.ts:149:79)\n\n ● Channels - Find Channels › MM-T4907_6 - should be able to find a joined private channel and not find an unjoined private channel\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/channels/find_channels.e2e.ts:50:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/channels/find_channels.e2e.ts:55:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/find_channels.e2e.ts:55:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990299588,
"runtime": 96142,
"slow": true,
"start": 1765990203446
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/create_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Create Channel"
],
"duration": 1736,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Create Channel MM-T4904_1 - should render at-mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4904_1 - should render at-mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Create Channel"
],
"duration": 1639,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Create Channel MM-T4904_2 - should render channel mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4904_2 - should render channel mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Create Channel"
],
"duration": 2343,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Create Channel MM-T4904_3 - should render emoji suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4904_3 - should render emoji suggestion autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Create Channel"
],
"duration": 1364,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Create Channel MM-T4904_4 - should not render slash suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4904_4 - should not render slash suggestion autocomplete in header input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990350763,
"runtime": 51046,
"slow": true,
"start": 1765990299717
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/edit_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Edit Channel"
],
"duration": 1891,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel MM-T4885_1 - should render at-mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4885_1 - should render at-mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel"
],
"duration": 1559,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel MM-T4885_2 - should render channel mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4885_2 - should render channel mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel"
],
"duration": 2237,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel MM-T4885_3 - should render emoji suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4885_3 - should render emoji suggestion autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel"
],
"duration": 1343,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel MM-T4885_4 - should not render slash suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4885_4 - should not render slash suggestion autocomplete in header input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990400178,
"runtime": 49244,
"slow": true,
"start": 1765990350934
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/edit_channel_header.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Edit Channel Header"
],
"duration": 2276,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel Header MM-T4884_1 - should render at-mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4884_1 - should render at-mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel Header"
],
"duration": 1599,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel Header MM-T4884_2 - should render channel mention autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4884_2 - should render channel mention autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel Header"
],
"duration": 2228,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel Header MM-T4884_3 - should render emoji suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4884_3 - should render emoji suggestion autocomplete in header input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Channel Header"
],
"duration": 1279,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Channel Header MM-T4884_4 - should not render slash suggestion autocomplete in header input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4884_4 - should not render slash suggestion autocomplete in header input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990459058,
"runtime": 58743,
"slow": true,
"start": 1765990400315
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/edit_post.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Edit Post"
],
"duration": 1634,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Post MM-T4883_1 - should render at-mention autocomplete in message input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4883_1 - should render at-mention autocomplete in message input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Post"
],
"duration": 1576,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Post MM-T4883_2 - should render channel mention autocomplete in message input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4883_2 - should render channel mention autocomplete in message input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Post"
],
"duration": 2290,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Post MM-T4883_3 - should render emoji suggestion autocomplete in message input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4883_3 - should render emoji suggestion autocomplete in message input"
},
{
"ancestorTitles": [
"Autocomplete - Edit Post"
],
"duration": 1983,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Edit Post MM-T4883_4 - should not render slash suggestion autocomplete in message input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4883_4 - should not render slash suggestion autocomplete in message input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 6,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990528697,
"runtime": 69501,
"slow": true,
"start": 1765990459196
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 5236,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:67:9)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_1 - should suggest emoji based on emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_1 - should suggest emoji based on emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 4855,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:82:9)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_2 - should suggest emoji based on uppercase emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_2 - should suggest emoji based on uppercase emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 4716,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:97:9)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_3 - should suggest emoji based on partial emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_3 - should suggest emoji based on partial emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 4724,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:112:9)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_4 - should stop suggesting emoji after emoji name with trailing space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_4 - should stop suggesting emoji after emoji name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 4714,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:134:9)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_5 - should stop suggesting emoji when keyword is not associated with any emoji",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_5 - should stop suggesting emoji when keyword is not associated with any emoji"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 3674,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=5075, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/emoji_suggestion.e2e.ts:152:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_6 - should be able to select emoji suggestion multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4880_6 - should be able to select emoji suggestion multiple times"
}
],
"failureMessage": " ● Autocomplete - Emoji Suggestion › MM-T4880_1 - should suggest emoji based on emoji name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:67:9)\n\n ● Autocomplete - Emoji Suggestion › MM-T4880_2 - should suggest emoji based on uppercase emoji name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:82:9)\n\n ● Autocomplete - Emoji Suggestion › MM-T4880_3 - should suggest emoji based on partial emoji name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:97:9)\n\n ● Autocomplete - Emoji Suggestion › MM-T4880_4 - should stop suggesting emoji after emoji name with trailing space\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:112:9)\n\n ● Autocomplete - Emoji Suggestion › MM-T4880_5 - should stop suggesting emoji when keyword is not associated with any emoji\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:134:9)\n\n ● Autocomplete - Emoji Suggestion › MM-T4880_6 - should be able to select emoji suggestion multiple times\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=5075, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 150 |\u001b[39m\n \u001b[90m 151 |\u001b[39m \u001b[90m// * Verify emoji suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 152 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatEmojiSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 153 |\u001b[39m\n \u001b[90m 154 |\u001b[39m \u001b[90m// # Type in 3rd to last characters of emoji name and tap on emoji suggestion autocomplete\u001b[39m\n \u001b[90m 155 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mpostInput\u001b[33m.\u001b[39mtypeText(emojiName3rdToLastChars)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/emoji_suggestion.e2e.ts:152:60)\n"
},
{
"leaks": false,
"numFailingTests": 6,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990594265,
"runtime": 65499,
"slow": true,
"start": 1765990528766
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4536,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:65:9)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_1 - should suggest slash command based on slash command name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_1 - should suggest slash command based on slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4164,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:80:9)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_2 - should suggest slash command based on partial slash command name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_2 - should suggest slash command based on partial slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4197,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:95:9)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_3 - should stop suggesting slash command after uppercase slash command name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_3 - should stop suggesting slash command after uppercase slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4176,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:110:9)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_4 - should stop suggesting slash command after slash command name with trailing space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_4 - should stop suggesting slash command after slash command name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4144,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:132:9)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_5 - should stop suggesting slash command when keyword is not associated with any slash command",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_5 - should stop suggesting slash command when keyword is not associated with any slash command"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 3057,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=5387, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/slash_suggestion.e2e.ts:150:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_6 - should not be able to select slash suggestion multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4881_6 - should not be able to select slash suggestion multiple times"
}
],
"failureMessage": " ● Autocomplete - Slash Suggestion › MM-T4881_1 - should suggest slash command based on slash command name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:65:9)\n\n ● Autocomplete - Slash Suggestion › MM-T4881_2 - should suggest slash command based on partial slash command name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:80:9)\n\n ● Autocomplete - Slash Suggestion › MM-T4881_3 - should stop suggesting slash command after uppercase slash command name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:95:9)\n\n ● Autocomplete - Slash Suggestion › MM-T4881_4 - should stop suggesting slash command after slash command name with trailing space\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:110:9)\n\n ● Autocomplete - Slash Suggestion › MM-T4881_5 - should stop suggesting slash command when keyword is not associated with any slash command\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1705, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:132:9)\n\n ● Autocomplete - Slash Suggestion › MM-T4881_6 - should not be able to select slash suggestion multiple times\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=5387, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 148 |\u001b[39m\n \u001b[90m 149 |\u001b[39m \u001b[90m// * Verify slash suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 150 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatSlashSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 151 |\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[90m// # Type in slash command name and tap on slash suggestion autocomplete\u001b[39m\n \u001b[90m 153 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mpostInput\u001b[33m.\u001b[39mtypeText(slashCommand)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/slash_suggestion.e2e.ts:150:60)\n"
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990652813,
"runtime": 58445,
"slow": true,
"start": 1765990594368
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/thread_post_draft.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 3291,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=2267, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.at_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/thread_post_draft.e2e.ts:71:57)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_1 - should render at-mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4905_1 - should render at-mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 3144,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\nView Details: ReactScrollView{id=2437, visibility=VISIBLE, width=1030, height=440, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/thread_post_draft.e2e.ts:82:62)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_2 - should render channel mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4905_2 - should render channel mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 3650,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=2645, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/thread_post_draft.e2e.ts:93:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_3 - should render emoji suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4905_3 - should render emoji suggestion autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 3370,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=3327, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/thread_post_draft.e2e.ts:104:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_4 - should render slash suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4905_4 - should render slash suggestion autocomplete in post input"
}
],
"failureMessage": " ● Autocomplete - Thread Post Draft › MM-T4905_1 - should render at-mention autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=2267, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.at_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 69 |\u001b[39m\n \u001b[90m 70 |\u001b[39m \u001b[90m// * Verify at-mention list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 71 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39msectionAtMentionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 72 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 73 |\u001b[39m\n \u001b[90m 74 |\u001b[39m it(\u001b[32m'MM-T4905_2 - should render channel mention autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/thread_post_draft.e2e.ts:71:57)\n\n ● Autocomplete - Thread Post Draft › MM-T4905_2 - should render channel mention autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\n View Details: ReactScrollView{id=2437, visibility=VISIBLE, width=1030, height=440, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[90m// * Verify channel mention list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 82 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39msectionChannelMentionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 83 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 84 |\u001b[39m\n \u001b[90m 85 |\u001b[39m it(\u001b[32m'MM-T4905_3 - should render emoji suggestion autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/thread_post_draft.e2e.ts:82:62)\n\n ● Autocomplete - Thread Post Draft › MM-T4905_3 - should render emoji suggestion autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=2645, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 91 |\u001b[39m\n \u001b[90m 92 |\u001b[39m \u001b[90m// * Verify emoji suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 93 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatEmojiSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 94 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 95 |\u001b[39m\n \u001b[90m 96 |\u001b[39m it(\u001b[32m'MM-T4905_4 - should render slash suggestion autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/thread_post_draft.e2e.ts:93:60)\n\n ● Autocomplete - Thread Post Draft › MM-T4905_4 - should render slash suggestion autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=3327, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 102 |\u001b[39m\n \u001b[90m 103 |\u001b[39m \u001b[90m// * Verify slash suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 104 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatSlashSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 105 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 106 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 107 |\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/thread_post_draft.e2e.ts:104:60)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990775038,
"runtime": 122117,
"slow": true,
"start": 1765990652921
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/archive_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Archive Channel"
],
"duration": 31440,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Archive Channel MM-T4932_1 - should be able to archive a public channel and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4932_1 - should be able to archive a public channel and confirm"
},
{
"ancestorTitles": [
"Channels - Archive Channel"
],
"duration": 27413,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Archive Channel MM-T4932_2 - should be able to archive a public channel and cancel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4932_2 - should be able to archive a public channel and cancel"
},
{
"ancestorTitles": [
"Channels - Archive Channel"
],
"duration": 30099,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Archive Channel MM-T4932_3 - should be able to archive a private channel and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4932_3 - should be able to archive a private channel and confirm"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 7,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990852757,
"runtime": 77559,
"slow": true,
"start": 1765990775198
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/browse_channels.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 3309,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_1 - should match elements on browse channels screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_1 - should match elements on browse channels screen"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 11846,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_2 - should be able to browse and join an unjoined public channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_2 - should be able to browse and join an unjoined public channel"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 4178,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_3 - should display empty search state for browse channels",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_3 - should display empty search state for browse channels"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 7154,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_4 - should not be able to browse direct and group message channels",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_4 - should not be able to browse direct and group message channels"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 6836,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_5 - should be able to browse an archived channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_5 - should be able to browse an archived channel"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 5265,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_6 - should not be able to browse a joined public channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_6 - should not be able to browse a joined public channel"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 5976,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Browse Channels MM-T4729_7 - should not be able to browse joined and unjoined private channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4729_7 - should not be able to browse joined and unjoined private channel"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990210895,
"runtime": 100681,
"slow": true,
"start": 1765990110214
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/mention_notification_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Mention Notification Settings"
],
"duration": 428,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Mention Notification Settings MM-T5107_1 - should match elements on mention notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5107_1 - should match elements on mention notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Mention Notification Settings"
],
"duration": 10008,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Mention Notification Settings MM-T5107_2 - should be able to change mention notification settings and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5107_2 - should be able to change mention notification settings and save by tapping navigation back button"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990254058,
"runtime": 43014,
"slow": true,
"start": 1765990211044
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/notification_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Notification Settings"
],
"duration": 388,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Notification Settings MM-T5101_1 - should match elements on notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5101_1 - should match elements on notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Notification Settings"
],
"duration": 1386,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Notification Settings MM-T5101_2 - should be able to go to mention notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5101_2 - should be able to go to mention notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Notification Settings"
],
"duration": 1349,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Notification Settings MM-T5101_3 - should be able to go to push notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5101_3 - should be able to go to push notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Notification Settings"
],
"duration": 1578,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Notification Settings MM-T5101_4 - should be able to go to email notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5101_4 - should be able to go to email notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Notification Settings"
],
"duration": 1593,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Notification Settings MM-T5101_5 - should be able to go to auto-responder notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5101_5 - should be able to go to auto-responder notification settings screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990301195,
"runtime": 47023,
"slow": true,
"start": 1765990254172
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/push_notification_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Push Notification Settings"
],
"duration": 425,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Push Notification Settings MM-T5108_1 - should match elements on push notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5108_1 - should match elements on push notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Push Notification Settings"
],
"duration": 9079,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Push Notification Settings MM-T5108_2 - should be able to change push notification settings and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5108_2 - should be able to change push notification settings and save by tapping navigation back button"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990342558,
"runtime": 41215,
"slow": true,
"start": 1765990301343
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings"
],
"duration": 398,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings MM-T4991_1 - should match elements on settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4991_1 - should match elements on settings screen"
},
{
"ancestorTitles": [
"Account - Settings"
],
"duration": 1473,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings MM-T4991_2 - should be able to go to notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4991_2 - should be able to go to notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings"
],
"duration": 1622,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings MM-T4991_3 - should be able to go to display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4991_3 - should be able to go to display settings screen"
},
{
"ancestorTitles": [
"Account - Settings"
],
"duration": 1374,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings MM-T4991_4 - should be able to go to advanced settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4991_4 - should be able to go to advanced settings screen"
},
{
"ancestorTitles": [
"Account - Settings"
],
"duration": 1341,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings MM-T4991_5 - should be able to go to about screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4991_5 - should be able to go to about screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990384627,
"runtime": 41963,
"slow": true,
"start": 1765990342664
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/theme_display_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Theme Display Settings"
],
"duration": 409,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Theme Display Settings MM-T5111_1 - should match elements on theme display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5111_1 - should match elements on theme display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Theme Display Settings"
],
"duration": 4146,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Theme Display Settings MM-T5111_2 - should be able to select a theme and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5111_2 - should be able to select a theme and save by tapping navigation back button"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990434210,
"runtime": 49440,
"slow": true,
"start": 1765990384770
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/timezone_display_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Timezone Display Settings"
],
"duration": 318,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Timezone Display Settings MM-T5113_1 - should match elements on timezone display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5113_1 - should match elements on timezone display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Timezone Display Settings"
],
"duration": 12987,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Timezone Display Settings MM-T5113_2 - should be able to select a timezone and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5113_2 - should be able to select a timezone and save by tapping navigation back button"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 14,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990577218,
"runtime": 142889,
"slow": true,
"start": 1765990434329
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 1,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_1 - should suggest user based on username",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_1 - should suggest user based on username"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 1,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_2 - should suggest user based on nickname",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_2 - should suggest user based on nickname"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 1,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_3 - should suggest user based on first name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_3 - should suggest user based on first name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_4 - should suggest user based on last name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_4 - should suggest user based on last name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_5 - should suggest user based on lowercase first name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_5 - should suggest user based on lowercase first name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_6 - should suggest user based on lowercase last name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_6 - should suggest user based on lowercase last name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_7 - should suggest user based on full name with space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_7 - should suggest user based on full name with space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_8 - should suggest user based on partial full name with space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_8 - should suggest user based on partial full name with space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_9 - should stop suggesting user after full name with trailing space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_9 - should stop suggesting user after full name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_10 - should stop suggesting user when keyword is not associated with any user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_10 - should stop suggesting user when keyword is not associated with any user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_11 - should be able to select at-mention multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_11 - should be able to select at-mention multiple times"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 1,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_12 - should not be able to autocomplete deactivated user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_12 - should not be able to autocomplete deactivated user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_13 - should be able to autocomplete out of channel user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_13 - should be able to autocomplete out of channel user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:54:9)"
],
"fullName": "Autocomplete - At-Mention MM-T4878_14 - should include current user in autocomplete",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4878_14 - should include current user in autocomplete"
}
],
"failureMessage": " ● Autocomplete - At-Mention › MM-T4878_1 - should suggest user based on username\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_2 - should suggest user based on nickname\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_3 - should suggest user based on first name\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_4 - should suggest user based on last name\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_5 - should suggest user based on lowercase first name\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_6 - should suggest user based on lowercase last name\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_7 - should suggest user based on full name with space\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_8 - should suggest user based on partial full name with space\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_9 - should stop suggesting user after full name with trailing space\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_10 - should stop suggesting user when keyword is not associated with any user\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_11 - should be able to select at-mention multiple times\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_12 - should not be able to autocomplete deactivated user\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_13 - should be able to autocomplete out of channel user\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n ● Autocomplete - At-Mention › MM-T4878_14 - should include current user in autocomplete\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:54:9)\n\n\n ● Test suite failed to run\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 168 |\u001b[39m back \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 169 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 170 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mbackButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 171 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen)\u001b[33m.\u001b[39mnot\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 172 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 173 |\u001b[39m\u001b[0m\n\n at ChannelScreen.back (support/ui/screen/channel.ts:170:31)\n at Object.<anonymous> (test/products/channels/autocomplete/at_mention.e2e.ts:74:9)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ChannelScreen.back (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:170:31)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/at_mention.e2e.ts:74:9)"
}
},
{
"leaks": false,
"numFailingTests": 10,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990658943,
"runtime": 81517,
"slow": true,
"start": 1765990577426
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 4314,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:77:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_1 - should suggest channel based on channel name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_1 - should suggest channel based on channel name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3799,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:92:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_2 - should suggest channel based on channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_2 - should suggest channel based on channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3774,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:107:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_3 - should suggest channel based on lowercase channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_3 - should suggest channel based on lowercase channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3845,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:122:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_4 - should suggest channel based on partial channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_4 - should suggest channel based on partial channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3788,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:137:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_5 - should stop suggesting channel after channel display name with trailing space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_5 - should stop suggesting channel after channel display name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3841,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:159:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_6 - should stop suggesting channel when keyword is not associated with any channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_6 - should stop suggesting channel when keyword is not associated with any channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 2863,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactScrollView{id=2609, visibility=VISIBLE, width=1030, height=550, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:177:62)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_7 - should be able to select channel mention multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_7 - should be able to select channel mention multiple times"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 4701,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:197:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_8 - should be able to autocomplete archived channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_8 - should be able to autocomplete archived channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 4144,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:230:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_9 - should not be able to autocomplete out of team channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_9 - should not be able to autocomplete out of team channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 3965,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\nView Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n at Autocomplete.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_mention.e2e.ts:246:9)"
],
"fullName": "Autocomplete - Channel Mention MM-T4879_10 - should include current channel in autocomplete",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4879_10 - should include current channel in autocomplete"
}
],
"failureMessage": " ● Autocomplete - Channel Mention › MM-T4879_1 - should suggest channel based on channel name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:77:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_2 - should suggest channel based on channel display name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:92:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_3 - should suggest channel based on lowercase channel display name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:107:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_4 - should suggest channel based on partial channel display name\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:122:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_5 - should stop suggesting channel after channel display name with trailing space\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:137:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_6 - should stop suggesting channel when keyword is not associated with any channel\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=556, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-530.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:159:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_7 - should be able to select channel mention multiple times\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactScrollView{id=2609, visibility=VISIBLE, width=1030, height=550, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 175 |\u001b[39m\n \u001b[90m 176 |\u001b[39m \u001b[90m// * Verify channel mention list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 177 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39msectionChannelMentionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 178 |\u001b[39m\n \u001b[90m 179 |\u001b[39m \u001b[90m// # Type in channel name and tap on channel mention autocomplete\u001b[39m\n \u001b[90m 180 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mpostInput\u001b[33m.\u001b[39mtypeText(testChannel\u001b[33m.\u001b[39mname)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:177:62)\n\n ● Autocomplete - Channel Mention › MM-T4879_8 - should be able to autocomplete archived channel\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:197:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_9 - should not be able to autocomplete out of team channel\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:230:9)\n\n ● Autocomplete - Channel Mention › MM-T4879_10 - should include current channel in autocomplete\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <4> percent visible to the user\n View Details: ReactViewGroup{id=1735, visibility=VISIBLE, width=1036, height=633, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=-607.0, child-count=1}\n\n \u001b[0m \u001b[90m 115 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 116 |\u001b[39m \u001b[36mif\u001b[39m (isVisible) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 117 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m.\u001b[39matIndex(\u001b[35m0\u001b[39m))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 118 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautocomplete\u001b[33m;\u001b[39m\n \u001b[90m 119 |\u001b[39m }\n \u001b[90m 120 |\u001b[39m\u001b[0m\n\n at Autocomplete.toBeVisible (support/ui/component/autocomplete.ts:117:56)\n at Object.<anonymous> (test/products/channels/autocomplete/channel_mention.e2e.ts:246:9)\n"
},
{
"leaks": false,
"numFailingTests": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990712472,
"runtime": 53451,
"slow": true,
"start": 1765990659021
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_post_draft.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 3241,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=1813, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.at_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_post_draft.e2e.ts:65:57)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_1 - should render at-mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4882_1 - should render at-mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 2818,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\nView Details: ReactScrollView{id=1983, visibility=VISIBLE, width=1030, height=440, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_post_draft.e2e.ts:76:62)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_2 - should render channel mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4882_2 - should render channel mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 3706,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=2189, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_post_draft.e2e.ts:87:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_3 - should render emoji suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4882_3 - should render emoji suggestion autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 3390,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\nExpected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\nView Details: ReactScrollView{id=2873, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/autocomplete/channel_post_draft.e2e.ts:98:60)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_4 - should render slash suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4882_4 - should render slash suggestion autocomplete in post input"
}
],
"failureMessage": " ● Autocomplete - Channel Post Draft › MM-T4882_1 - should render at-mention autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=1813, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.at_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 63 |\u001b[39m\n \u001b[90m 64 |\u001b[39m \u001b[90m// * Verify at-mention list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 65 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39msectionAtMentionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 66 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 67 |\u001b[39m\n \u001b[90m 68 |\u001b[39m it(\u001b[32m'MM-T4882_2 - should render channel mention autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/channel_post_draft.e2e.ts:65:57)\n\n ● Autocomplete - Channel Post Draft › MM-T4882_2 - should render channel mention autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <5> percent visible to the user\n View Details: ReactScrollView{id=1983, visibility=VISIBLE, width=1030, height=440, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.channel_mention.section_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 74 |\u001b[39m\n \u001b[90m 75 |\u001b[39m \u001b[90m// * Verify channel mention list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 76 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39msectionChannelMentionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 77 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 78 |\u001b[39m\n \u001b[90m 79 |\u001b[39m it(\u001b[32m'MM-T4882_3 - should render emoji suggestion autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/channel_post_draft.e2e.ts:76:62)\n\n ● Autocomplete - Channel Post Draft › MM-T4882_3 - should render emoji suggestion autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=2189, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.emoji_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 85 |\u001b[39m\n \u001b[90m 86 |\u001b[39m \u001b[90m// * Verify emoji suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 87 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatEmojiSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 88 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 89 |\u001b[39m\n \u001b[90m 90 |\u001b[39m it(\u001b[32m'MM-T4882_4 - should render slash suggestion autocomplete in post input'\u001b[39m\u001b[33m,\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/channel_post_draft.e2e.ts:87:60)\n\n ● Autocomplete - Channel Post Draft › MM-T4882_4 - should render slash suggestion autocomplete in post input\n\n Test Failed: '(view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)' doesn't match the selected view.\n Expected: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n Got: view was <3> percent visible to the user\n View Details: ReactScrollView{id=2873, visibility=VISIBLE, width=1030, height=627, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=autocomplete.slash_suggestion.flat_list, root-is-layout-requested=false, has-input-connection=false, x=3.0, y=3.0, child-count=1}\n\n \u001b[0m \u001b[90m 96 |\u001b[39m\n \u001b[90m 97 |\u001b[39m \u001b[90m// * Verify slash suggestion list is displayed\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 98 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mAutocomplete\u001b[39m\u001b[33m.\u001b[39mflatSlashSuggestionList)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 99 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 100 |\u001b[39m })\u001b[33m;\u001b[39m\n \u001b[90m 101 |\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/autocomplete/channel_post_draft.e2e.ts:98:60)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990271355,
"runtime": 188479,
"slow": true,
"start": 1765990082876
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/threads.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Smoke Test - Threads"
],
"duration": 57233,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Threads MM-T4811_1 - should be able to create a thread, follow/unfollow a thread, mark a thread as read/unread, and reply to thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4811_1 - should be able to create a thread, follow/unfollow a thread, mark a thread as read/unread, and reply to thread"
},
{
"ancestorTitles": [
"Smoke Test - Threads"
],
"duration": 46158,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Threads MM-T4811_2 - should be able to save/unsave a thread and open a thread in channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4811_2 - should be able to save/unsave a thread and open a thread in channel"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990378082,
"runtime": 106618,
"slow": true,
"start": 1765990271464
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/teams/invite_people.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 10522,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5360 - should open the invite screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5360 - should open the invite screen"
},
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 10904,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5361 - should show no results item in search list",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5361 - should show no results item in search list"
},
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 12098,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5362 - should be able to send email invite",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5362 - should be able to send email invite"
},
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 12599,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5363 - should be able to send user invite",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5363 - should be able to send user invite"
},
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 12253,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5364 - should not be able to send user invite to user already in team",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5364 - should not be able to send user invite to user already in team"
},
{
"ancestorTitles": [
"Teams - Invite"
],
"duration": 14476,
"failureDetails": [],
"failureMessages": [],
"fullName": "Teams - Invite MM-T5365 - should handle both sent and not sent invites",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5365 - should handle both sent and not sent invites"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990528234,
"runtime": 149994,
"slow": true,
"start": 1765990378240
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/follow_and_unfollow_thread.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 25086,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Follow and Unfollow Thread MM-T4806_1 - should be able to follow/unfollow a thread via thread navigation",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4806_1 - should be able to follow/unfollow a thread via thread navigation"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 23398,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Follow and Unfollow Thread MM-T4806_2 - should be able to follow/unfollow a thread via post footer",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4806_2 - should be able to follow/unfollow a thread via post footer"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 38365,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Follow and Unfollow Thread MM-T4806_3 - should be able to follow/unfollow a thread via post options",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4806_3 - should be able to follow/unfollow a thread via post options"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 30500,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Follow and Unfollow Thread MM-T4806_4 - should be able to unfollow a thread via thread options",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4806_4 - should be able to unfollow a thread via thread options"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 5,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990724299,
"runtime": 195929,
"slow": true,
"start": 1765990528370
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 1,
"failureDetails": [
{
"message": "thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\""
}
],
"failureMessages": [
"Error: thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n at /home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:36:5\n at _dispatchDescribe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:91:26)\n at describe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:55:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:30:1)\n at Runtime._execModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1439:24)\n at Runtime._loadModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1022:12)\n at Runtime.requireModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:882:12)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Global Threads MM-T4805_1 - should match elements on global threads screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4805_1 - should match elements on global threads screen"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 1,
"failureDetails": [
{
"message": "thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\""
}
],
"failureMessages": [
"Error: thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n at /home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:36:5\n at _dispatchDescribe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:91:26)\n at describe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:55:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:30:1)\n at Runtime._execModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1439:24)\n at Runtime._loadModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1022:12)\n at Runtime.requireModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:882:12)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Global Threads MM-T4805_2 - should be able to go to a thread a user started and followed",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4805_2 - should be able to go to a thread a user started and followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 0,
"failureDetails": [
{
"message": "thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\""
}
],
"failureMessages": [
"Error: thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n at /home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:36:5\n at _dispatchDescribe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:91:26)\n at describe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:55:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:30:1)\n at Runtime._execModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1439:24)\n at Runtime._loadModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1022:12)\n at Runtime.requireModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:882:12)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Global Threads MM-T4805_3 - should not display a thread a user started but not followed",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4805_3 - should not display a thread a user started but not followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 1,
"failureDetails": [
{
"message": "thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\""
}
],
"failureMessages": [
"Error: thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n at /home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:36:5\n at _dispatchDescribe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:91:26)\n at describe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:55:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:30:1)\n at Runtime._execModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1439:24)\n at Runtime._loadModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1022:12)\n at Runtime.requireModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:882:12)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Global Threads MM-T4805_4 - should be able to go to a thread a user replied to and followed",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4805_4 - should be able to go to a thread a user replied to and followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 1,
"failureDetails": [
{
"message": "thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\""
}
],
"failureMessages": [
"Error: thrown: \"Exceeded timeout of 180000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n at /home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:36:5\n at _dispatchDescribe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:91:26)\n at describe (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/index.js:55:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:30:1)\n at Runtime._execModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1439:24)\n at Runtime._loadModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:1022:12)\n at Runtime.requireModule (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runtime/build/index.js:882:12)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Global Threads MM-T4805_5 - should not display a thread a user replied to but not followed",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4805_5 - should not display a thread a user replied to but not followed"
}
],
"failureMessage": " ● Threads - Global Threads › MM-T4805_1 - should match elements on global threads screen\n\n thrown: \"Exceeded timeout of 180000 ms for a hook.\n Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n\n \u001b[0m \u001b[90m 34 |\u001b[39m \u001b[36mlet\u001b[39m testUser\u001b[33m:\u001b[39m any\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m beforeAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 37 |\u001b[39m \u001b[36mconst\u001b[39m {channel\u001b[33m,\u001b[39m user} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mSetup\u001b[39m\u001b[33m.\u001b[39mapiInit(siteOneUrl)\u001b[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m testChannel \u001b[33m=\u001b[39m channel\u001b[33m;\u001b[39m\n \u001b[90m 39 |\u001b[39m testUser \u001b[33m=\u001b[39m user\u001b[33m;\u001b[39m\u001b[0m\n\n at test/products/channels/threads/global_threads.e2e.ts:36:5\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:30:1)\n\n ● Threads - Global Threads › MM-T4805_2 - should be able to go to a thread a user started and followed\n\n thrown: \"Exceeded timeout of 180000 ms for a hook.\n Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n\n \u001b[0m \u001b[90m 34 |\u001b[39m \u001b[36mlet\u001b[39m testUser\u001b[33m:\u001b[39m any\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m beforeAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 37 |\u001b[39m \u001b[36mconst\u001b[39m {channel\u001b[33m,\u001b[39m user} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mSetup\u001b[39m\u001b[33m.\u001b[39mapiInit(siteOneUrl)\u001b[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m testChannel \u001b[33m=\u001b[39m channel\u001b[33m;\u001b[39m\n \u001b[90m 39 |\u001b[39m testUser \u001b[33m=\u001b[39m user\u001b[33m;\u001b[39m\u001b[0m\n\n at test/products/channels/threads/global_threads.e2e.ts:36:5\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:30:1)\n\n ● Threads - Global Threads › MM-T4805_3 - should not display a thread a user started but not followed\n\n thrown: \"Exceeded timeout of 180000 ms for a hook.\n Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n\n \u001b[0m \u001b[90m 34 |\u001b[39m \u001b[36mlet\u001b[39m testUser\u001b[33m:\u001b[39m any\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m beforeAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 37 |\u001b[39m \u001b[36mconst\u001b[39m {channel\u001b[33m,\u001b[39m user} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mSetup\u001b[39m\u001b[33m.\u001b[39mapiInit(siteOneUrl)\u001b[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m testChannel \u001b[33m=\u001b[39m channel\u001b[33m;\u001b[39m\n \u001b[90m 39 |\u001b[39m testUser \u001b[33m=\u001b[39m user\u001b[33m;\u001b[39m\u001b[0m\n\n at test/products/channels/threads/global_threads.e2e.ts:36:5\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:30:1)\n\n ● Threads - Global Threads › MM-T4805_4 - should be able to go to a thread a user replied to and followed\n\n thrown: \"Exceeded timeout of 180000 ms for a hook.\n Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n\n \u001b[0m \u001b[90m 34 |\u001b[39m \u001b[36mlet\u001b[39m testUser\u001b[33m:\u001b[39m any\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m beforeAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 37 |\u001b[39m \u001b[36mconst\u001b[39m {channel\u001b[33m,\u001b[39m user} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mSetup\u001b[39m\u001b[33m.\u001b[39mapiInit(siteOneUrl)\u001b[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m testChannel \u001b[33m=\u001b[39m channel\u001b[33m;\u001b[39m\n \u001b[90m 39 |\u001b[39m testUser \u001b[33m=\u001b[39m user\u001b[33m;\u001b[39m\u001b[0m\n\n at test/products/channels/threads/global_threads.e2e.ts:36:5\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:30:1)\n\n ● Threads - Global Threads › MM-T4805_5 - should not display a thread a user replied to but not followed\n\n thrown: \"Exceeded timeout of 180000 ms for a hook.\n Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.\"\n\n \u001b[0m \u001b[90m 34 |\u001b[39m \u001b[36mlet\u001b[39m testUser\u001b[33m:\u001b[39m any\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m beforeAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 37 |\u001b[39m \u001b[36mconst\u001b[39m {channel\u001b[33m,\u001b[39m user} \u001b[33m=\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mSetup\u001b[39m\u001b[33m.\u001b[39mapiInit(siteOneUrl)\u001b[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m testChannel \u001b[33m=\u001b[39m channel\u001b[33m;\u001b[39m\n \u001b[90m 39 |\u001b[39m testUser \u001b[33m=\u001b[39m user\u001b[33m;\u001b[39m\u001b[0m\n\n at test/products/channels/threads/global_threads.e2e.ts:36:5\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:30:1)\n\n\n ● Test suite failed to run\n\n The pending request #77 (\"invoke\") has been rejected due to the following error:\n\n Detox has detected multiple interactions taking place simultaneously. Have you forgotten to apply an await over one of the Detox actions in your test code?\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/threads/global_threads.e2e.ts:53:26)\n",
"testExecError": {
"message": "",
"stack": "The pending request #77 (\"invoke\") has been rejected due to the following error:\n\nDetox has detected multiple interactions taking place simultaneously. Have you forgotten to apply an await over one of the Detox actions in your test code?\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/global_threads.e2e.ts:53:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990810186,
"runtime": 85643,
"slow": true,
"start": 1765990724543
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/mark_thread_as_read_and_unread.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Mark Thread as Read and Unread"
],
"duration": 16396,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Mark Thread as Read and Unread MM-T4807_1 - should be able to mark a thread as read by opening thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4807_1 - should be able to mark a thread as read by opening thread"
},
{
"ancestorTitles": [
"Threads - Mark Thread as Read and Unread"
],
"duration": 22792,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Mark Thread as Read and Unread MM-T4807_2 - should be able to mark a thread as read/unread via thread options",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4807_2 - should be able to mark a thread as read/unread via thread options"
},
{
"ancestorTitles": [
"Threads - Mark Thread as Read and Unread"
],
"duration": 13482,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Mark Thread as Read and Unread MM-T4807_3 - should be able to mark all threads as read",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4807_3 - should be able to mark all threads as read"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990877006,
"runtime": 66696,
"slow": true,
"start": 1765990810310
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/open_thread_in_channel.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Open Thread in Channel"
],
"duration": 22403,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at ChannelScreen.openReplyThreadFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/open_thread_in_channel.e2e.ts:62:9)"
],
"fullName": "Threads - Open Thread in Channel MM-T4810_1 - should be able to open a thread in channel via thread options",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4810_1 - should be able to open a thread in channel via thread options"
},
{
"ancestorTitles": [
"Threads - Open Thread in Channel"
],
"duration": 10652,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/open_thread_in_channel.e2e.ts:48:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Open Thread in Channel MM-T4810_2 - should be able to open a thread in channel by permalink",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4810_2 - should be able to open a thread in channel by permalink"
}
],
"failureMessage": " ● Threads - Open Thread in Channel › MM-T4810_1 - should be able to open a thread in channel via thread options\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at ChannelScreen.openReplyThreadFor (support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (test/products/channels/threads/open_thread_in_channel.e2e.ts:62:9)\n\n ● Threads - Open Thread in Channel › MM-T4810_2 - should be able to open a thread in channel by permalink\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/threads/open_thread_in_channel.e2e.ts:48:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/threads/open_thread_in_channel.e2e.ts:53:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/open_thread_in_channel.e2e.ts:53:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990943937,
"runtime": 66833,
"slow": true,
"start": 1765990877104
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/reply_to_thread.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Reply to Thread"
],
"duration": 21938,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at ChannelScreen.openReplyThreadFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/reply_to_thread.e2e.ts:61:9)"
],
"fullName": "Threads - Reply to Thread MM-T4809_1 - should be able to reply to a thread via thread options",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4809_1 - should be able to reply to a thread via thread options"
},
{
"ancestorTitles": [
"Threads - Reply to Thread"
],
"duration": 10601,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/reply_to_thread.e2e.ts:47:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Reply to Thread MM-T4809_2 - should be able to reply to a thread by opening thread",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4809_2 - should be able to reply to a thread by opening thread"
}
],
"failureMessage": " ● Threads - Reply to Thread › MM-T4809_1 - should be able to reply to a thread via thread options\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at ChannelScreen.openReplyThreadFor (support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (test/products/channels/threads/reply_to_thread.e2e.ts:61:9)\n\n ● Threads - Reply to Thread › MM-T4809_2 - should be able to reply to a thread by opening thread\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/threads/reply_to_thread.e2e.ts:47:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/threads/reply_to_thread.e2e.ts:52:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/reply_to_thread.e2e.ts:52:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765991010468,
"runtime": 66418,
"slow": true,
"start": 1765990944050
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/save_and_unsave_thread.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Threads - Save and Unsave Thread"
],
"duration": 22046,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at PostOptionsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:202:33)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at ChannelScreen.openReplyThreadFor (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/save_and_unsave_thread.e2e.ts:62:9)"
],
"fullName": "Threads - Save and Unsave Thread MM-T4808_1 - should be able to save/unsave a thread via thread options",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T4808_1 - should be able to save/unsave a thread via thread options"
},
{
"ancestorTitles": [
"Threads - Save and Unsave Thread"
],
"duration": 10812,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelListScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/save_and_unsave_thread.e2e.ts:48:33)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:246:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
],
"fullName": "Threads - Save and Unsave Thread MM-T4808_2 - should be able to save/unsave a thread via thread overview",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4808_2 - should be able to save/unsave a thread via thread overview"
}
],
"failureMessage": " ● Threads - Save and Unsave Thread › MM-T4808_1 - should be able to save/unsave a thread via thread options\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 48 |\u001b[39m\n \u001b[90m 49 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 50 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpostOptionsScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 51 |\u001b[39m\n \u001b[90m 52 |\u001b[39m \u001b[36mreturn\u001b[39m postOptionsScreen\u001b[33m;\u001b[39m\n \u001b[90m 53 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at PostOptionsScreen.toBeVisible (support/ui/screen/post_options.ts:50:57)\n at ChannelScreen.openPostOptionsFor (support/ui/screen/channel.ts:202:33)\n at ChannelScreen.openReplyThreadFor (support/ui/screen/channel.ts:207:9)\n at Object.<anonymous> (test/products/channels/threads/save_and_unsave_thread.e2e.ts:62:9)\n\n ● Threads - Save and Unsave Thread › MM-T4808_2 - should be able to save/unsave a thread via thread overview\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoExist()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 80 |\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelListScreen\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelListScreen.toBeVisible (support/ui/screen/channel_list.ts:79:57)\n at Object.<anonymous> (test/products/channels/threads/save_and_unsave_thread.e2e.ts:48:33)\n\n\n ● Test suite failed to run\n\n Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 82 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Open account screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mHomeScreen\u001b[39m\u001b[33m.\u001b[39maccountTab\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\u001b[0m\n\n at AccountScreen.open (support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (test/products/channels/threads/save_and_unsave_thread.e2e.ts:53:26)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: 2.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at AccountScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/account.ts:84:60)\n at HomeScreen.logout (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/home.ts:40:29)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/threads/save_and_unsave_thread.e2e.ts:53:26)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990249622,
"runtime": 99414,
"slow": true,
"start": 1765990150208
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/about.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - About"
],
"duration": 7888,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - About MM-T5104_1 - should match elements on about screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5104_1 - should match elements on about screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 7,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990320825,
"runtime": 70991,
"slow": true,
"start": 1765990249834
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/account_menu.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 531,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T4988_1 - should match elements on account screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4988_1 - should match elements on account screen"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 10430,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T4988_2 - should be able to set user presence",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4988_2 - should be able to set user presence"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 2242,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T4988_3 - should be able to go to custom status screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4988_3 - should be able to go to custom status screen"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 1897,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T4988_4 - should be able to go to edit profile screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4988_4 - should be able to go to edit profile screen"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 1385,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T4988_5 - should be able to go to settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4988_5 - should be able to go to settings screen"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 3081,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T3472 - should be able to add Nickname",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T3472 - should be able to add Nickname"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 3904,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Account Menu MM-T3472 - should show error when Username is updated with invalid characters",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T3472 - should show error when Username is updated with invalid characters"
},
{
"ancestorTitles": [
"Account - Account Menu"
],
"duration": 11571,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n at ChannelScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/account_menu.e2e.ts:191:29)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Account - Account Menu MM-T2056 - Username changes when viewed by other user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T2056 - Username changes when viewed by other user"
}
],
"failureMessage": " ● Account - Account Menu › MM-T2056 - Username changes when viewed by other user\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: (view has effective visibility <VISIBLE> and view.getGlobalVisibleRect() covers at least <75> percent of the view's area)\n\n \u001b[0m \u001b[90m 155 |\u001b[39m open \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m (categoryKey\u001b[33m:\u001b[39m string\u001b[33m,\u001b[39m channelName\u001b[33m:\u001b[39m string) \u001b[33m=>\u001b[39m {\n \u001b[90m 156 |\u001b[39m \u001b[90m// # Open channel screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 157 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName))\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 158 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mgetChannelItemDisplayName(categoryKey\u001b[33m,\u001b[39m channelName)\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 159 |\u001b[39m \u001b[36mtry\u001b[39m {\n \u001b[90m 160 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mscheduledPostTooltipCloseButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.open (support/ui/screen/channel.ts:157:108)\n at Object.<anonymous> (test/products/channels/account/account_menu.e2e.ts:191:29)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990358699,
"runtime": 37778,
"slow": true,
"start": 1765990320921
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/advanced_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Advanced Settings"
],
"duration": 349,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Advanced Settings MM-T5103_1 - should match elements on advanced settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5103_1 - should match elements on advanced settings screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990502307,
"runtime": 143503,
"slow": true,
"start": 1765990358804
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/auto_responder_notification_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Auto-Responder Notification Settings"
],
"duration": 1,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/auto_responder_notification_settings.e2e.ts:36:9)"
],
"fullName": "Account - Settings - Auto-Responder Notification Settings MM-T5110_1 - should match elements on auto-responder notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "MM-T5110_1 - should match elements on auto-responder notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Auto-Responder Notification Settings"
],
"duration": 0,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at ServerScreen.tapConnectButton (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:60:24)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/auto_responder_notification_settings.e2e.ts:36:9)"
],
"fullName": "Account - Settings - Auto-Responder Notification Settings MM-T5110_2 - should be able to change auto-responder notification settings and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5110_2 - should be able to change auto-responder notification settings and save by tapping navigation back button"
}
],
"failureMessage": " ● Account - Settings - Auto-Responder Notification Settings › MM-T5110_1 - should match elements on auto-responder notification settings screen\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/account/auto_responder_notification_settings.e2e.ts:36:9)\n\n ● Account - Settings - Auto-Responder Notification Settings › MM-T5110_2 - should be able to change auto-responder notification settings and save by tapping navigation back button\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m tapConnectButton \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 84 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mconnectButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 85 |\u001b[39m \u001b[36mawait\u001b[39m wait(timeouts\u001b[33m.\u001b[39m\u001b[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 86 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 87 |\u001b[39m\u001b[0m\n\n at ServerScreen.tapConnectButton (support/ui/screen/server.ts:84:34)\n at ServerScreen.connectToServer (support/ui/screen/server.ts:60:24)\n at Object.<anonymous> (test/products/channels/account/auto_responder_notification_settings.e2e.ts:36:9)\n\n\n ● Test suite failed to run\n\n Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n\n \u001b[0m \u001b[90m 39 |\u001b[39m\n \u001b[90m 40 |\u001b[39m back \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 41 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mbackButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 42 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mautoResponderNotificationSettingsScreen)\u001b[33m.\u001b[39mnot\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 43 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 44 |\u001b[39m\u001b[0m\n\n at AutoResponderNotificationSettingsScreen.back (support/ui/screen/auto_responder_notification_settings.ts:41:31)\n at Object.<anonymous> (test/products/channels/account/auto_responder_notification_settings.e2e.ts:51:55)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: Wait for [com.wix.detox.reactnative.idlingresources.bridge.BridgeIdlingResource] to become idle timed out\n at AutoResponderNotificationSettingsScreen.back (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/auto_responder_notification_settings.ts:41:31)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/auto_responder_notification_settings.e2e.ts:51:55)\n at Promise.then.completed (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusHook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:281:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:154:7)\n at _runTestsForDescribeBlock (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:121:9)\n at run (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/node_modules/jest-runner/build/runTest.js:444:34)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990544361,
"runtime": 41790,
"slow": true,
"start": 1765990502571
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/clock_display_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Clock Display Settings"
],
"duration": 380,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Clock Display Settings MM-T5112_1 - should match elements on clock display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5112_1 - should match elements on clock display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Clock Display Settings"
],
"duration": 3857,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Clock Display Settings MM-T5112_2 - should be able to select a clock display and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5112_2 - should be able to select a clock display and save by tapping navigation back button"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 8,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990763949,
"runtime": 219493,
"slow": true,
"start": 1765990544456
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/custom_status.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 3164,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T4990_1 - should match elements on custom status screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4990_1 - should match elements on custom status screen"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 15277,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T4990_2 - should be able to set a status via suggestions",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4990_2 - should be able to set a status via suggestions"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 22199,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T4990_3 - should be able to set a status via emoji picker and custom status",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4990_3 - should be able to set a status via emoji picker and custom status"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 17330,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T4990_4 - should be able to clear custom status from account",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4990_4 - should be able to clear custom status from account"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 14879,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T3890 - should be able to select and reselect suggested status",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T3890 - should be able to select and reselect suggested status"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 31862,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T3891 - should be able to set custom status with emoji picker and manage it",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T3891 - should be able to set custom status with emoji picker and manage it"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 23754,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T3892 - should manage recent custom statuses correctly",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T3892 - should manage recent custom statuses correctly"
},
{
"ancestorTitles": [
"Account - Custom Status"
],
"duration": 56837,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Custom Status MM-T4091 - should be able to set custom status with expiry time and verify in various locations",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4091 - should be able to set custom status with expiry time and verify in various locations"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990805417,
"runtime": 41338,
"slow": true,
"start": 1765990764079
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/display_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Display Settings"
],
"duration": 346,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Display Settings MM-T5102_1 - should match elements on display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5102_1 - should match elements on display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Display Settings"
],
"duration": 1563,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Display Settings MM-T5102_2 - should be able to go to theme display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5102_2 - should be able to go to theme display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Display Settings"
],
"duration": 1294,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Display Settings MM-T5102_3 - should be able to go to clock display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5102_3 - should be able to go to clock display settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Display Settings"
],
"duration": 1314,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Display Settings MM-T5102_4 - should be able to go to timezone display settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5102_4 - should be able to go to timezone display settings screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990852375,
"runtime": 46781,
"slow": true,
"start": 1765990805594
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/edit_profile.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Edit Profile"
],
"duration": 1748,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Edit Profile MM-T4989_1 - should match elements on edit profile screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4989_1 - should match elements on edit profile screen"
},
{
"ancestorTitles": [
"Account - Edit Profile"
],
"duration": 10527,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Edit Profile MM-T4989_2 - should be able to edit profile and save",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4989_2 - should be able to edit profile and save"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765990889727,
"runtime": 37238,
"slow": true,
"start": 1765990852489
},
"skipped": false,
"snapshot": {
"added": 0,
"fileDeleted": false,
"matched": 0,
"unchecked": 0,
"uncheckedKeys": [],
"unmatched": 0,
"updated": 0
},
"testFilePath": "/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/email_notification_settings.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Account - Settings - Email Notification Settings"
],
"duration": 410,
"failureDetails": [],
"failureMessages": [],
"fullName": "Account - Settings - Email Notification Settings MM-T5109_1 - should match elements on email notification settings screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T5109_1 - should match elements on email notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Email Notification Settings"
],
"duration": 2131,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" and view has effective visibility <VISIBLE>)' doesn't match the selected view.\nExpected: (an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" view.getText() was \"Immediately\" transformed text was \"Immediately\"\nView Details: ReactTextView{id=1159, visibility=VISIBLE, width=227, height=55, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=notification_settings.email_notifications.option.info, root-is-layout-requested=false, has-input-connection=false, x=699.0, y=39.0, text=Immediately, input-type=0, ime-target=false, has-links=false}\n\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/email_notification_settings.e2e.ts:76:79)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Account - Settings - Email Notification Settings MM-T5109_2 - should be able to change email notification settings and save by tapping navigation back button",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5109_2 - should be able to change email notification settings and save by tapping navigation back button"
}
],
"failureMessage": " ● Account - Settings - Email Notification Settings › MM-T5109_2 - should be able to change email notification settings and save by tapping navigation back button\n\n Test Failed: '(an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" and view has effective visibility <VISIBLE>)' doesn't match the selected view.\n Expected: (an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"Never\" view.getText() was \"Immediately\" transformed text was \"Immediately\"\n View Details: ReactTextView{id=1159, visibility=VISIBLE, width=227, height=55, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=notification_settings.email_notifications.option.info, root-is-layout-requested=false, has-input-connection=false, x=699.0, y=39.0, text=Immediately, input-type=0, ime-target=false, has-links=false}\n\n \u001b[0m \u001b[90m 74 |\u001b[39m \u001b[90m// * Verify on notification settings screen and never is set\u001b[39m\n \u001b[90m 75 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mNotificationSettingsScreen\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 76 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mNotificationSettingsScreen\u001b[39m\u001b[33m.\u001b[39memailNotificationsOptionInfo)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Never'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 77 |\u001b[39m\n \u001b[90m 78 |\u001b[39m \u001b[90m// # Go back to email notification settings screen\u001b[39m\n \u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mEmailNotificationSettingsScreen\u001b[39m\u001b[33m.\u001b[39mopen()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/account/email_notification_settings.e2e.ts:76:79)\n\n\n ● Test suite failed to run\n\n Test Failed: No views in hierarchy found matching: (view.getTag() is \"screen.back.button\" and view has effective visibility <VISIBLE>)\n\n\n HINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n\n \u001b[0m \u001b[90m 43 |\u001b[39m\n \u001b[90m 44 |\u001b[39m back \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 45 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mbackButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 46 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mnotificationSettingsScreen)\u001b[33m.\u001b[39mnot\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 47 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 48 |\u001b[39m }\u001b[0m\n\n at NotificationSettingsScreen.back (support/ui/screen/notification_settings.ts:45:31)\n at Object.<anonymous> (test/products/channels/account/email_notification_settings.e2e.ts:51:42)\n",
"testExecError": {
"message": "",
"stack": "Test Failed: No views in hierarchy found matching: (view.getTag() is \"screen.back.button\" and view has effective visibility <VISIBLE>)\n\n\nHINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n at NotificationSettingsScreen.back (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/notification_settings.ts:45:31)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/email_notification_settings.e2e.ts:51:42)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
}
}
],
"wasInterrupted": false
}