Test Suites
67 passed, 88 total
Tests
283 passed, 335 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": 21,
"numFailedTests": 51,
"numPassedTestSuites": 67,
"numPassedTests": 283,
"numPendingTestSuites": 0,
"numPendingTests": 1,
"numRuntimeErrorTestSuites": 11,
"numTodoTests": 0,
"numTotalTestSuites": 88,
"numTotalTests": 335,
"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": 1765842662915,
"success": false,
"testResults": [
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843074191,
"runtime": 186147,
"slow": true,
"start": 1765842888044
},
"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": 5764,
"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": 41332,
"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": 4866,
"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": 5737,
"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": 19547,
"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": 8337,
"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": 16880,
"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": 1,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843161112,
"runtime": 86792,
"slow": true,
"start": 1765843074320
},
"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": 15412,
"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": 12354,
"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": 11013,
"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": 13378,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at DisplaySettingsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/display_settings.ts:32:61)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/account.e2e.ts:179:37)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Smoke Test - Account MM-T5114_4 - should be able to set display settings",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T5114_4 - should be able to set display settings"
}
],
"failureMessage": " ● Smoke Test - Account › MM-T5114_4 - should be able to set display settings\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 30 |\u001b[39m\n \u001b[90m 31 |\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 32 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mdisplaySettingsScreen)\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 33 |\u001b[39m\n \u001b[90m 34 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mdisplaySettingsScreen\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at DisplaySettingsScreen.toBeVisible (support/ui/screen/display_settings.ts:32:61)\n at Object.<anonymous> (test/products/channels/smoke_test/account.e2e.ts:179:37)\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/account.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/smoke_test/account.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": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843244037,
"runtime": 82805,
"slow": true,
"start": 1765843161232
},
"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": 11893,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4886_1 - should be able to select and post at-mention suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 11826,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4886_2 - should be able to select and post channel mention suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 12900,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Autocomplete MM-T4886_3 - should be able to select and post emoji suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4886_3 - should be able to select and post emoji suggestion"
},
{
"ancestorTitles": [
"Smoke Test - Autocomplete"
],
"duration": 7098,
"failureDetails": [],
"failureMessages": [],
"fullName": "Smoke Test - Autocomplete MM-T4886_4 - should be able to select and post slash suggestion",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4886_4 - should be able to select and post slash suggestion"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843425791,
"runtime": 181626,
"slow": true,
"start": 1765843244165
},
"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": 32567,
"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": 42821,
"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": 10155,
"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": 15176,
"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": 10501,
"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": 36971,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/smoke_test/channels.e2e.ts:204:9)"
],
"fullName": "Smoke Test - Channels MM-T4774_6 - should be able to archive and leave a channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4774_6 - should be able to archive and leave a channel"
}
],
"failureMessage": " ● Smoke Test - Channels › MM-T4774_6 - should be able to archive and leave a channel\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 148 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 149 |\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 150 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen)\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 151 |\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen\u001b[33m;\u001b[39m\n \u001b[90m 153 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.toBeVisible (support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (test/products/channels/smoke_test/channels.e2e.ts:204:9)\n"
},
{
"leaks": false,
"numFailingTests": 7,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843541875,
"runtime": 115963,
"slow": true,
"start": 1765843425912
},
"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": 17237,
"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/smoke_test/messaging.e2e.ts:88:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": 10588,
"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": 10640,
"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": 10722,
"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": 10667,
"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": 10623,
"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": 10794,
"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: '(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 86 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 87 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(post\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 88 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 89 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 90 |\u001b[39m\n \u001b[90m 91 |\u001b[39m \u001b[90m// # Open post options for the updated message, tap delete option and confirm\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/smoke_test/messaging.e2e.ts:88:47)\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": 1765843636759,
"runtime": 94780,
"slow": true,
"start": 1765843541979
},
"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": 13168,
"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": 16344,
"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": 17009,
"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": 15710,
"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": 1765843704809,
"runtime": 67936,
"slow": true,
"start": 1765843636873
},
"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": 20476,
"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": 29338,
"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": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843768516,
"runtime": 63588,
"slow": true,
"start": 1765843704928
},
"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": 19883,
"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/smoke_test/threads.e2e.ts:76:52)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"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": 10663,
"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/threads.e2e.ts:49: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 - 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": "failed",
"title": "MM-T4811_2 - should be able to save/unsave a thread and open a thread in channel"
}
],
"failureMessage": " ● 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\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 74 |\u001b[39m\n \u001b[90m 75 |\u001b[39m \u001b[90m// * Verify thread is followed by user via thread navigation\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 76 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mThreadScreen\u001b[39m\u001b[33m.\u001b[39mfollowingButton)\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\n \u001b[90m 78 |\u001b[39m \u001b[90m// # Go back to channel list screen, then go to global threads screen, tap on all your threads button, open thread options for thread, tap on mark as unread option, and tap on unread threads button\u001b[39m\n \u001b[90m 79 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mThreadScreen\u001b[39m\u001b[33m.\u001b[39mback()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/smoke_test/threads.e2e.ts:76:52)\n\n ● Smoke Test - Threads › MM-T4811_2 - should be able to save/unsave a thread and open a thread in 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/smoke_test/threads.e2e.ts:49: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/threads.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/smoke_test/threads.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": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844186643,
"runtime": 130995,
"slow": true,
"start": 1765844055648
},
"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": 24274,
"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": 22163,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4864_2 - should be able to save/unsave a message via post options on thread screen"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844331214,
"runtime": 144418,
"slow": true,
"start": 1765844186796
},
"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": 20443,
"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": 37771,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T5767 should be able to create a scheduled message under a threaded post"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 15309,
"failureDetails": [],
"failureMessages": [],
"fullName": "Scheduled Draft, MM-T5731 should be able to Delete a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5731 should be able to Delete a scheduled Message"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 22113,
"failureDetails": [],
"failureMessages": [],
"fullName": "Scheduled Draft, MM-T5730 should be able to Send a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5730 should be able to Send a scheduled Message"
},
{
"ancestorTitles": [
"Scheduled Draft,"
],
"duration": 15515,
"failureDetails": [],
"failureMessages": [],
"fullName": "Scheduled Draft, MM-T5720 should be able to Reschedule a scheduled Message",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T5720 should be able to Reschedule a scheduled Message"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844438311,
"runtime": 106967,
"slow": true,
"start": 1765844331344
},
"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": 9151,
"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": 22984,
"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": 20419,
"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/search/pinned_messages.e2e.ts:140:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"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": 10787,
"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/search/pinned_messages.e2e.ts:52: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": "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": "failed",
"title": "MM-T4918_4 - should be able to unpin a message from pinned messages screen"
},
{
"ancestorTitles": [
"Search - Pinned Messages"
],
"duration": 10579,
"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/search/pinned_messages.e2e.ts:52: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": "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": "failed",
"title": "MM-T4918_5 - should be able to save/unsave a pinned message from pinned messages screen"
}
],
"failureMessage": " ● Search - Pinned Messages › MM-T4918_3 - should be able to edit, reply to, and delete a pinned message from pinned messages 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 138 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 139 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mPinnedMessagesScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(pinnedPost\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 140 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 141 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 142 |\u001b[39m\n \u001b[90m 143 |\u001b[39m \u001b[90m// # Open post options for updated pinned message and tap on reply option\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/search/pinned_messages.e2e.ts:140:47)\n\n ● Search - Pinned Messages › MM-T4918_4 - should be able to unpin a message from pinned messages screen\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/search/pinned_messages.e2e.ts:52:33)\n\n ● Search - Pinned Messages › MM-T4918_5 - should be able to save/unsave a pinned message from pinned messages screen\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/search/pinned_messages.e2e.ts:52: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/search/pinned_messages.e2e.ts:57: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/search/pinned_messages.e2e.ts:57: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": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844531799,
"runtime": 93265,
"slow": true,
"start": 1765844438534
},
"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": 1736,
"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": 19659,
"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": 16392,
"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/search/recent_mentions.e2e.ts:139:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"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": 10752,
"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/search/recent_mentions.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": "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": "failed",
"title": "MM-T4909_4 - should be able to save/unsave a recent mention from recent mentions screen"
},
{
"ancestorTitles": [
"Search - Recent Mentions"
],
"duration": 10586,
"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/search/recent_mentions.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 _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": "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": "failed",
"title": "MM-T4909_5 - should be able to pin/unpin a recent mention from recent mentions screen"
}
],
"failureMessage": " ● Search - Recent Mentions › MM-T4909_3 - should be able to edit, reply to, and delete a recent mention from recent mentions 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 137 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 138 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mRecentMentionsScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(mentionPost\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 139 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 140 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 141 |\u001b[39m\n \u001b[90m 142 |\u001b[39m \u001b[90m// # Open post options for recent mention and tap on reply option\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/search/recent_mentions.e2e.ts:139:47)\n\n ● Search - Recent Mentions › MM-T4909_4 - should be able to save/unsave a recent mention from recent mentions screen\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/search/recent_mentions.e2e.ts:55:33)\n\n ● Search - Recent Mentions › MM-T4909_5 - should be able to pin/unpin a recent mention from recent mentions screen\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/search/recent_mentions.e2e.ts:55:33)\n"
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844716277,
"runtime": 184358,
"slow": true,
"start": 1765844531919
},
"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": 1752,
"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": 24657,
"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": 21503,
"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/search/saved_messages.e2e.ts:142:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"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": 10622,
"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/search/saved_messages.e2e.ts:54: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": "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": "failed",
"title": "MM-T4910_4 - should be able to unsave a message from saved messages screen"
},
{
"ancestorTitles": [
"Search - Saved Messages"
],
"duration": 10580,
"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/search/saved_messages.e2e.ts:54: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": "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": "failed",
"title": "MM-T4910_5 - should be able to pin/unpin a saved message from saved messages screen"
}
],
"failureMessage": " ● Search - Saved Messages › MM-T4910_3 - should be able to edit, reply to, and delete a saved message from saved messages 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 140 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 141 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mSavedMessagesScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(savedPost\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 142 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 143 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 144 |\u001b[39m\n \u001b[90m 145 |\u001b[39m \u001b[90m// # Open post options for updated saved message and tap on reply option\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/search/saved_messages.e2e.ts:142:47)\n\n ● Search - Saved Messages › MM-T4910_4 - should be able to unsave a message from saved messages screen\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/search/saved_messages.e2e.ts:54:33)\n\n ● Search - Saved Messages › MM-T4910_5 - should be able to pin/unpin a saved message from saved messages screen\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/search/saved_messages.e2e.ts:54:33)\n"
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 9,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844990576,
"runtime": 274221,
"slow": true,
"start": 1765844716355
},
"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": 2591,
"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": 22204,
"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": 21641,
"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": 24394,
"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": 25720,
"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": 28795,
"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": 28676,
"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": 23795,
"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": 16808,
"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": 24717,
"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/search/search_messages.e2e.ts:395:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"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": 10645,
"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/search/search_messages.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": "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": "failed",
"title": "MM-T5294_11 - should be able to save/unsave a searched message from search results screen"
},
{
"ancestorTitles": [
"Search - Search Messages"
],
"duration": 10676,
"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/search/search_messages.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": "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": "failed",
"title": "MM-T5294_12 - should be able to pin/unpin a searched message from search results screen"
}
],
"failureMessage": " ● Search - Search Messages › MM-T5294_10 - should be able to edit, reply to, and delete a searched message from search results 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 393 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 394 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mSearchMessagesScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(searchedPost\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 395 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 396 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 397 |\u001b[39m\n \u001b[90m 398 |\u001b[39m \u001b[90m// # Open post options for searched message and tap on reply option\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/search/search_messages.e2e.ts:395:47)\n\n ● Search - Search Messages › MM-T5294_11 - should be able to save/unsave a searched message from search results screen\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/search/search_messages.e2e.ts:59:33)\n\n ● Search - Search Messages › MM-T5294_12 - should be able to pin/unpin a searched message from search results screen\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/search/search_messages.e2e.ts:59:33)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765845024522,
"runtime": 33842,
"slow": true,
"start": 1765844990680
},
"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": 3817,
"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": 1620,
"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": 2942,
"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": 2963,
"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": 7062,
"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": 1765845075316,
"runtime": 50671,
"slow": true,
"start": 1765845024645
},
"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": 7326,
"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": 7761,
"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": 9110,
"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": 1,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765845142967,
"runtime": 67558,
"slow": true,
"start": 1765845075409
},
"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": 22128,
"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": 17728,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(view.getTag() is \"server_form.preauth_secret.input\" and view has effective visibility <VISIBLE>)' matches 2 views in the hierarchy:\n- [1] ReactEditText{id=185, visibility=VISIBLE, width=854, height=66, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=server_form.preauth_secret.input, root-is-layout-requested=false, has-input-connection=true, editor-info=[inputType=0x80081 imeOptions=0x4000006 privateImeOptions=null actionLabel=null actionId=0 initialSelStart=0 initialSelEnd=0 initialToolType=0 initialCapsMode=0x0 hintText= label=null packageName=null autofillId=null fieldId=0 fieldName=null extras=Bundle[{android.support.text.emoji.emojiCompat_metadataVersion=9, android.support.text.emoji.emojiCompat_replaceAll=false}] hintLocales=null supportedHandwritingGestureTypes=SELECT|SELECT_RANGE|INSERT|DELETE|DELETE_RANGE|REMOVE_SPACE|JOIN_OR_SPLIT supportedHandwritingGesturePreviewTypes=SELECT|SELECT_RANGE|DELETE|DELETE_RANGE contentMimeTypes=null ], x=47.0, y=36.0, text=, hint=, input-type=524417, ime-target=false, has-links=false}\n- [2] ReactEditText{id=163, visibility=VISIBLE, width=854, height=66, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=server_form.preauth_secret.input, root-is-layout-requested=false, has-input-connection=true, editor-info=[inputType=0x80081 imeOptions=0x4000006 privateImeOptions=null actionLabel=null actionId=0 initialSelStart=0 initialSelEnd=0 initialToolType=0 initialCapsMode=0x0 hintText= label=null packageName=null autofillId=null fieldId=0 fieldName=null extras=Bundle[{android.support.text.emoji.emojiCompat_metadataVersion=9, android.support.text.emoji.emojiCompat_replaceAll=false}] hintLocales=null supportedHandwritingGestureTypes=SELECT|SELECT_RANGE|INSERT|DELETE|DELETE_RANGE|REMOVE_SPACE|JOIN_OR_SPLIT supportedHandwritingGesturePreviewTypes=SELECT|SELECT_RANGE|DELETE|DELETE_RANGE contentMimeTypes=null ], x=47.0, y=36.0, text=, hint=, input-type=524417, ime-target=false, has-links=false}\nProblem views are marked with '****MATCHES****' below.\n\n\nHINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n at ServerScreen.enterPreauthSecret (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:94:62)\n at ServerScreen.connectToServerWithPreauthSecret (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/server.ts:107:20)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/server_login/preauth_secret_connection.e2e.ts:87:9)"
],
"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": "failed",
"title": "MM-T5000_2 - should connect to server with preauth secret and verify storage"
},
{
"ancestorTitles": [
"Server Login - Preauth Secret Connection"
],
"duration": 12145,
"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": " ● Server Login - Preauth Secret Connection › MM-T5000_2 - should connect to server with preauth secret and verify storage\n\n Test Failed: '(view.getTag() is \"server_form.preauth_secret.input\" and view has effective visibility <VISIBLE>)' matches 2 views in the hierarchy:\n - [1] ReactEditText{id=185, visibility=VISIBLE, width=854, height=66, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=server_form.preauth_secret.input, root-is-layout-requested=false, has-input-connection=true, editor-info=[inputType=0x80081 imeOptions=0x4000006 privateImeOptions=null actionLabel=null actionId=0 initialSelStart=0 initialSelEnd=0 initialToolType=0 initialCapsMode=0x0 hintText= label=null packageName=null autofillId=null fieldId=0 fieldName=null extras=Bundle[{android.support.text.emoji.emojiCompat_metadataVersion=9, android.support.text.emoji.emojiCompat_replaceAll=false}] hintLocales=null supportedHandwritingGestureTypes=SELECT|SELECT_RANGE|INSERT|DELETE|DELETE_RANGE|REMOVE_SPACE|JOIN_OR_SPLIT supportedHandwritingGesturePreviewTypes=SELECT|SELECT_RANGE|DELETE|DELETE_RANGE contentMimeTypes=null ], x=47.0, y=36.0, text=, hint=, input-type=524417, ime-target=false, has-links=false}\n - [2] ReactEditText{id=163, visibility=VISIBLE, width=854, height=66, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.view.ViewGroup$LayoutParams@YYYYYY, tag=server_form.preauth_secret.input, root-is-layout-requested=false, has-input-connection=true, editor-info=[inputType=0x80081 imeOptions=0x4000006 privateImeOptions=null actionLabel=null actionId=0 initialSelStart=0 initialSelEnd=0 initialToolType=0 initialCapsMode=0x0 hintText= label=null packageName=null autofillId=null fieldId=0 fieldName=null extras=Bundle[{android.support.text.emoji.emojiCompat_metadataVersion=9, android.support.text.emoji.emojiCompat_replaceAll=false}] hintLocales=null supportedHandwritingGestureTypes=SELECT|SELECT_RANGE|INSERT|DELETE|DELETE_RANGE|REMOVE_SPACE|JOIN_OR_SPLIT supportedHandwritingGesturePreviewTypes=SELECT|SELECT_RANGE|DELETE|DELETE_RANGE contentMimeTypes=null ], x=47.0, y=36.0, text=, hint=, input-type=524417, ime-target=false, has-links=false}\n Problem views are marked with '****MATCHES****' below.\n\n\n HINT: To print view hierarchy on failed actions/matches, use log-level verbose or higher.\n\n \u001b[0m \u001b[90m 92 |\u001b[39m\n \u001b[90m 93 |\u001b[39m enterPreauthSecret \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m (secret\u001b[33m:\u001b[39m string) \u001b[33m=>\u001b[39m {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 94 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpreauthSecretInput)\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 95 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mpreauthSecretInput\u001b[33m.\u001b[39mreplaceText(secret)\u001b[33m;\u001b[39m\n \u001b[90m 96 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 97 |\u001b[39m\u001b[0m\n\n at ServerScreen.enterPreauthSecret (support/ui/screen/server.ts:94:62)\n at ServerScreen.connectToServerWithPreauthSecret (support/ui/screen/server.ts:107:20)\n at Object.<anonymous> (test/products/channels/server_login/preauth_secret_connection.e2e.ts:87:9)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842808987,
"runtime": 146000,
"slow": true,
"start": 1765842662987
},
"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": 9774,
"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": 10673,
"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": 12551,
"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": 10055,
"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": 14886,
"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": 1765842903366,
"runtime": 94228,
"slow": true,
"start": 1765842809138
},
"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": 19108,
"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": 19132,
"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": 22412,
"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": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842992502,
"runtime": 89028,
"slow": true,
"start": 1765842903474
},
"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": 21354,
"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": 8412,
"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": 8479,
"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": 17454,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4781_4 - should be able to create a message draft from reply thread"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843065725,
"runtime": 73104,
"slow": true,
"start": 1765842992621
},
"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": 17554,
"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/messaging/message_edit.e2e.ts:80:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": 10873,
"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": 10683,
"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: '(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 78 |\u001b[39m \u001b[90m// * Verify post message is updated and displays edited indicator '(edited)'\u001b[39m\n \u001b[90m 79 |\u001b[39m \u001b[36mconst\u001b[39m {postListPostItem\u001b[33m:\u001b[39m updatedPostListPostItem\u001b[33m,\u001b[39m postListPostItemEditedIndicator} \u001b[33m=\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mgetPostListPostItem(post\u001b[33m.\u001b[39mid\u001b[33m,\u001b[39m updatedMessage)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 80 |\u001b[39m \u001b[36mawait\u001b[39m expect(updatedPostListPostItem)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mawait\u001b[39m expect(postListPostItemEditedIndicator)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'Edited'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 82 |\u001b[39m\n \u001b[90m 83 |\u001b[39m \u001b[90m// # Go back to channel list screen\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/messaging/message_edit.e2e.ts:80:47)\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": 1765843191289,
"runtime": 125427,
"slow": true,
"start": 1765843065862
},
"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": 16528,
"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": 12975,
"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": 13344,
"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": 20888,
"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": 15610,
"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": 12854,
"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": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843249920,
"runtime": 58527,
"slow": true,
"start": 1765843191393
},
"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": 11387,
"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": 14290,
"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": 1765843335541,
"runtime": 85499,
"slow": true,
"start": 1765843250042
},
"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": 23146,
"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": 11923,
"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": 17211,
"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": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843434321,
"runtime": 98648,
"slow": true,
"start": 1765843335673
},
"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": 17649,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"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": 16368,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4876_2 - should be able to jump to target public channel post by tapping on permalink with _redirect"
},
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 15755,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4876_3 - should be able to jump to target DM post by tapping on permalink with team name"
},
{
"ancestorTitles": [
"Messaging - Permalink"
],
"duration": 15138,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4876_4 - should be able to jump to target DM post by tapping on permalink with _redirect"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843549331,
"runtime": 114903,
"slow": true,
"start": 1765843434428
},
"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": 41516,
"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": 40287,
"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": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843069627,
"runtime": 175183,
"slow": true,
"start": 1765842894444
},
"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": 29797,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4862_1 - should be able to view recent reactions and add new reaction via post options"
},
{
"ancestorTitles": [
"Messaging - Emojis and Reactions"
],
"duration": 23403,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"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": 19339,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"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": 19281,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Emojis and Reactions MM-T4862_4 - should display empty search state for emoji picker",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4862_4 - should display empty search state for emoji picker"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843140240,
"runtime": 70457,
"slow": true,
"start": 1765843069783
},
"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": 21378,
"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": 16438,
"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": 1765843184526,
"runtime": 44169,
"slow": true,
"start": 1765843140357
},
"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": 11309,
"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": 1765843241910,
"runtime": 57296,
"slow": true,
"start": 1765843184614
},
"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": 13677,
"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": 10070,
"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": 1765843286425,
"runtime": 44377,
"slow": true,
"start": 1765843242048
},
"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": 11414,
"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": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843340991,
"runtime": 54461,
"slow": true,
"start": 1765843286530
},
"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": 11736,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Image MM-T4896_1 - should be able to display markdown image",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4896_1 - should be able to display markdown image"
},
{
"ancestorTitles": [
"Messaging - Markdown Image"
],
"duration": 10328,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Image MM-T4896_2 - should be able to display markdown image with link",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4896_2 - should be able to display markdown image with link"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 1,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843385330,
"runtime": 44218,
"slow": true,
"start": 1765843341112
},
"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": null,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Latex MM-T4900_1 - should be able to display markdown latex code block",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "pending",
"title": "MM-T4900_1 - should be able to display markdown latex code block"
},
{
"ancestorTitles": [
"Messaging - Markdown Latex"
],
"duration": 11611,
"failureDetails": [],
"failureMessages": [],
"fullName": "Messaging - Markdown Latex MM-T4900_2 - should be able to display markdown inline latex",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"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": 1765843437259,
"runtime": 51767,
"slow": true,
"start": 1765843385492
},
"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": 11369,
"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": 10089,
"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": 1765843479245,
"runtime": 41867,
"slow": true,
"start": 1765843437378
},
"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": 9006,
"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": 2,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843744439,
"runtime": 120460,
"slow": true,
"start": 1765843623979
},
"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": 1890,
"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": 8452,
"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": 2776,
"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": 9493,
"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": 3338,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: No views in hierarchy found matching: (view.getTag() is \"find_channels.filtered_list.channel_item.channel-71f0a1\" 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:140: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": 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/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 _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-71f0a1\" 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 138 |\u001b[39m \u001b[90m// * Verify search returns the target archived channel item\u001b[39m\n \u001b[90m 139 |\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 140 |\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 141 |\u001b[39m\n \u001b[90m 142 |\u001b[39m \u001b[90m// * Verify on archievd channel name\u001b[39m\n \u001b[90m 143 |\u001b[39m \u001b[36mawait\u001b[39m verifyDetailsOnChannelScreen(archivedChannel\u001b[33m.\u001b[39mdisplay_name)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/channels/find_channels.e2e.ts:140: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": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843831518,
"runtime": 86941,
"slow": true,
"start": 1765843744577
},
"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": 18068,
"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": 19153,
"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": 16664,
"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": 1765843893824,
"runtime": 62141,
"slow": true,
"start": 1765843831683
},
"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": 28578,
"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": 1765843957442,
"runtime": 63497,
"slow": true,
"start": 1765843893945
},
"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": 18441,
"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": 12420,
"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": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844250128,
"runtime": 292569,
"slow": true,
"start": 1765843957559
},
"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": 120796,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [LooperIdlingResource-132-mqt_js] to become idle timed out\n at ChannelInfoScreen.open (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel_info.ts:102:41)\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/unarchive_channel.e2e.ts:53:9)"
],
"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": "failed",
"title": "MM-T4944_1 - should be able to unarchive a public channel and confirm"
},
{
"ancestorTitles": [
"Channels - Unarchive Channel"
],
"duration": 121566,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 120.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 Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/unarchive_channel.e2e.ts:36:74)\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": "Channels - Unarchive Channel MM-T4944_2 - should be able to unarchive a private channel and confirm",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4944_2 - should be able to unarchive a private channel and confirm"
}
],
"failureMessage": " ● Channels - Unarchive Channel › MM-T4944_1 - should be able to unarchive a public channel and confirm\n\n Test Failed: Wait for [LooperIdlingResource-132-mqt_js] to become idle timed out\n\n \u001b[0m \u001b[90m 100 |\u001b[39m \u001b[90m// # Open channel info screen\u001b[39m\n \u001b[90m 101 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mheaderTitle)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTEN_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 102 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelScreen\u001b[39m\u001b[33m.\u001b[39mheaderTitle\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 103 |\u001b[39m\n \u001b[90m 104 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 105 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelInfoScreen.open (support/ui/screen/channel_info.ts:102:41)\n at Object.<anonymous> (test/products/channels/channels/unarchive_channel.e2e.ts:53:9)\n\n ● Channels - Unarchive Channel › MM-T4944_2 - should be able to unarchive a private channel and confirm\n\n Test Failed: 120.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 34 |\u001b[39m beforeEach(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 35 |\u001b[39m \u001b[90m// * Verify on channel list screen\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 36 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mchannelListScreen)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m.\u001b[39mwithTimeout(timeouts\u001b[33m.\u001b[39m\u001b[33mTWO_MIN\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[33m;\u001b[39m\n \u001b[90m 38 |\u001b[39m\n \u001b[90m 39 |\u001b[39m afterAll(\u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\n\n at Object.<anonymous> (test/products/channels/channels/unarchive_channel.e2e.ts:36:74)\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/unarchive_channel.e2e.ts:41: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/unarchive_channel.e2e.ts:41: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": 1765844291489,
"runtime": 41211,
"slow": true,
"start": 1765844250278
},
"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": 5671,
"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": 4881,
"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": 1765844372542,
"runtime": 80916,
"slow": true,
"start": 1765844291626
},
"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": 15613,
"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": 19576,
"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": 13000,
"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": 1765844433237,
"runtime": 60587,
"slow": true,
"start": 1765844372650
},
"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": 12669,
"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": 15370,
"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": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844490612,
"runtime": 57241,
"slow": true,
"start": 1765844433371
},
"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": 12110,
"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": 12227,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4875_2 - should be able to open joined channel by tapping on channel mention"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 3,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843898441,
"runtime": 137357,
"slow": true,
"start": 1765843761084
},
"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": 3801,
"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": 10505,
"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": 4487,
"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": 7469,
"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": 4447,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: No views in hierarchy found matching: (view.getTag() is \"browse_channels.channel_dropdown.text.public\" 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/browse_channels.e2e.ts:149:62)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"fullName": "Channels - Browse Channels MM-T4729_5 - should be able to browse an archived channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4729_5 - should be able to browse an archived channel"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"duration": 10665,
"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/browse_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 - Browse Channels MM-T4729_6 - should not be able to browse a joined public channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4729_6 - should not be able to browse a joined public channel"
},
{
"ancestorTitles": [
"Channels - Browse Channels"
],
"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/channels/browse_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 - Browse Channels MM-T4729_7 - should not be able to browse joined and unjoined private channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "MM-T4729_7 - should not be able to browse joined and unjoined private channel"
}
],
"failureMessage": " ● Channels - Browse Channels › MM-T4729_5 - should be able to browse an archived channel\n\n Test Failed: No views in hierarchy found matching: (view.getTag() is \"browse_channels.channel_dropdown.text.public\" 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[36mawait\u001b[39m \u001b[33mChannel\u001b[39m\u001b[33m.\u001b[39mapiDeleteChannel(siteOneUrl\u001b[33m,\u001b[39m archivedChannel\u001b[33m.\u001b[39mid)\u001b[33m;\u001b[39m\n \u001b[90m 148 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mBrowseChannelsScreen\u001b[39m\u001b[33m.\u001b[39mopen()\u001b[33m;\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 149 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mBrowseChannelsScreen\u001b[39m\u001b[33m.\u001b[39mchannelDropdownTextPublic\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[33mONE_SEC\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 151 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelDropdownMenuScreen\u001b[39m\u001b[33m.\u001b[39marchivedChannelsItem\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mBrowseChannelsScreen\u001b[39m\u001b[33m.\u001b[39msearchInput\u001b[33m.\u001b[39mreplaceText(archivedChannel\u001b[33m.\u001b[39mname)\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/channels/browse_channels.e2e.ts:149:62)\n\n ● Channels - Browse Channels › MM-T4729_6 - should not be able to browse a joined public 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/browse_channels.e2e.ts:50:33)\n\n ● Channels - Browse Channels › MM-T4729_7 - should not be able to browse joined and 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/browse_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/browse_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/browse_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": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843957553,
"runtime": 58950,
"slow": true,
"start": 1765843898603
},
"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": 10279,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel Info MM-T4928_1 - should match elements on channel info screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4928_1 - should match elements on channel info screen"
},
{
"ancestorTitles": [
"Channels - Channel Info"
],
"duration": 7111,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4928_2 - should be able to view channel info by tapping intro channel info action"
},
{
"ancestorTitles": [
"Channels - Channel Info"
],
"duration": 8441,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4928_3 - should be able to view channel info from channel quick actions"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 9,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844058206,
"runtime": 100519,
"slow": true,
"start": 1765843957687
},
"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": 570,
"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": 26227,
"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": 12153,
"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": 3523,
"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": 7751,
"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": 3280,
"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": 1761,
"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": 1704,
"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": 10611,
"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": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844125809,
"runtime": 67465,
"slow": true,
"start": 1765844058344
},
"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": 12038,
"failureDetails": [],
"failureMessages": [],
"fullName": "Channels - Channel Post List MM-T4773_1 - should match elements on channel screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4773_1 - should match elements on channel screen"
},
{
"ancestorTitles": [
"Channels - Channel Post List"
],
"duration": 22274,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4773_2 - should be able to add a message to post list and delete a message from post list"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844385917,
"runtime": 259987,
"slow": true,
"start": 1765844125930
},
"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": 131449,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: Wait for [LooperIdlingResource-130-mqt_js] to become idle timed out\n at CreateOrEditChannelScreen.openCreateChannel (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/create_or_edit_channel.ts:55:54)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/convert_to_private_channel.e2e.ts:47:9)"
],
"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": "failed",
"title": "MM-T4972_1 - should be able to convert public channel to private and confirm"
},
{
"ancestorTitles": [
"Channels - Convert to Private Channel"
],
"duration": 42589,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: No views in hierarchy found matching: (view.getTag() is \"plus_menu_item.create_new_channel\" 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 CreateOrEditChannelScreen.openCreateChannel (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/create_or_edit_channel.ts:55:54)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/convert_to_private_channel.e2e.ts:67:9)"
],
"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": "failed",
"title": "MM-T4972_2 - should be able to convert public channel to private and cancel"
}
],
"failureMessage": " ● Channels - Convert to Private Channel › MM-T4972_1 - should be able to convert public channel to private and confirm\n\n Test Failed: Wait for [LooperIdlingResource-130-mqt_js] to become idle timed out\n\n \u001b[0m \u001b[90m 53 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mheaderPlusButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 54 |\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 55 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mcreateNewChannelItem\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 56 |\u001b[39m\n \u001b[90m 57 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 58 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at CreateOrEditChannelScreen.openCreateChannel (support/ui/screen/create_or_edit_channel.ts:55:54)\n at Object.<anonymous> (test/products/channels/channels/convert_to_private_channel.e2e.ts:47:9)\n\n ● Channels - Convert to Private Channel › MM-T4972_2 - should be able to convert public channel to private and cancel\n\n Test Failed: No views in hierarchy found matching: (view.getTag() is \"plus_menu_item.create_new_channel\" 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 53 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mheaderPlusButton\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m 54 |\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 55 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mChannelListScreen\u001b[39m\u001b[33m.\u001b[39mcreateNewChannelItem\u001b[33m.\u001b[39mtap()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 56 |\u001b[39m\n \u001b[90m 57 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m 58 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at CreateOrEditChannelScreen.openCreateChannel (support/ui/screen/create_or_edit_channel.ts:55:54)\n at Object.<anonymous> (test/products/channels/channels/convert_to_private_channel.e2e.ts:67:9)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844450969,
"runtime": 64861,
"slow": true,
"start": 1765844386108
},
"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": 3891,
"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": 13890,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"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": 13652,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4731_3 - should be able to create a private channel and edit the channel header"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844615609,
"runtime": 164500,
"slow": true,
"start": 1765844451109
},
"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": 17298,
"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": 28686,
"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": 33501,
"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": 17928,
"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": 34364,
"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": 1765844746793,
"runtime": 131061,
"slow": true,
"start": 1765844615732
},
"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": 6170,
"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": 12789,
"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": 33884,
"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": 39119,
"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": 1765844857515,
"runtime": 110541,
"slow": true,
"start": 1765844746974
},
"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": 23521,
"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": 15516,
"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": 38398,
"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": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842768276,
"runtime": 104584,
"slow": true,
"start": 1765842663692
},
"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": 3246,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_1 - should render at-mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4882_1 - should render at-mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 2514,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_2 - should render channel mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4882_2 - should render channel mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 3360,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_3 - should render emoji suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4882_3 - should render emoji suggestion autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Channel Post Draft"
],
"duration": 2686,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Post Draft MM-T4882_4 - should render slash suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4882_4 - should render slash suggestion autocomplete in post input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842812224,
"runtime": 43802,
"slow": true,
"start": 1765842768422
},
"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": 1689,
"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": 1493,
"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": 2336,
"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": 1354,
"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": 1765842863898,
"runtime": 51545,
"slow": true,
"start": 1765842812353
},
"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": 2379,
"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": 1498,
"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": 2268,
"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": 1349,
"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": 1765842915196,
"runtime": 51177,
"slow": true,
"start": 1765842864019
},
"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": 1950,
"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": 1432,
"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": 2172,
"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": 1272,
"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": 1765842973500,
"runtime": 58162,
"slow": true,
"start": 1765842915338
},
"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": 1298,
"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": 1669,
"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": 2287,
"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": 1922,
"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": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843069225,
"runtime": 95627,
"slow": true,
"start": 1765842973598
},
"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": 9833,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_1 - should suggest emoji based on emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4880_1 - should suggest emoji based on emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 9695,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_2 - should suggest emoji based on uppercase emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4880_2 - should suggest emoji based on uppercase emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 6304,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_3 - should suggest emoji based on partial emoji name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4880_3 - should suggest emoji based on partial emoji name"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 11082,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4880_4 - should stop suggesting emoji after emoji name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 9202,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4880_5 - should stop suggesting emoji when keyword is not associated with any emoji"
},
{
"ancestorTitles": [
"Autocomplete - Emoji Suggestion"
],
"duration": 10298,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Emoji Suggestion MM-T4880_6 - should be able to select emoji suggestion multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4880_6 - should be able to select emoji suggestion multiple times"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843140686,
"runtime": 71327,
"slow": true,
"start": 1765843069359
},
"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": 5191,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Slash Suggestion MM-T4881_1 - should suggest slash command based on slash command name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4881_1 - should suggest slash command based on slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4588,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4881_2 - should suggest slash command based on partial slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4867,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4881_3 - should stop suggesting slash command after uppercase slash command name"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 6675,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4881_4 - should stop suggesting slash command after slash command name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 4655,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4881_5 - should stop suggesting slash command when keyword is not associated with any slash command"
},
{
"ancestorTitles": [
"Autocomplete - Slash Suggestion"
],
"duration": 5022,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4881_6 - should not be able to select slash suggestion multiple times"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 4,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843196366,
"runtime": 55550,
"slow": true,
"start": 1765843140816
},
"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": 2823,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_1 - should render at-mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4905_1 - should render at-mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 2375,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_2 - should render channel mention autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4905_2 - should render channel mention autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 3124,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_3 - should render emoji suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4905_3 - should render emoji suggestion autocomplete in post input"
},
{
"ancestorTitles": [
"Autocomplete - Thread Post Draft"
],
"duration": 2605,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Thread Post Draft MM-T4905_4 - should render slash suggestion autocomplete in post input",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4905_4 - should render slash suggestion autocomplete in post input"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 2,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843331787,
"runtime": 135281,
"slow": true,
"start": 1765843196506
},
"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": 37827,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/archive_channel.e2e.ts:68:9)"
],
"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": "failed",
"title": "MM-T4932_1 - should be able to archive a public channel and confirm"
},
{
"ancestorTitles": [
"Channels - Archive Channel"
],
"duration": 27241,
"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": 36783,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at ChannelScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/channels/archive_channel.e2e.ts:117:9)"
],
"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": "failed",
"title": "MM-T4932_3 - should be able to archive a private channel and confirm"
}
],
"failureMessage": " ● Channels - Archive Channel › MM-T4932_1 - should be able to archive a public channel and confirm\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 148 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 149 |\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 150 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen)\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 151 |\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen\u001b[33m;\u001b[39m\n \u001b[90m 153 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.toBeVisible (support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (test/products/channels/channels/archive_channel.e2e.ts:68:9)\n\n ● Channels - Archive Channel › MM-T4932_3 - should be able to archive a private channel and confirm\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 148 |\u001b[39m toBeVisible \u001b[33m=\u001b[39m \u001b[36masync\u001b[39m () \u001b[33m=>\u001b[39m {\n \u001b[90m 149 |\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 150 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen)\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 151 |\u001b[39m\n \u001b[90m 152 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mchannelScreen\u001b[33m;\u001b[39m\n \u001b[90m 153 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at ChannelScreen.toBeVisible (support/ui/screen/channel.ts:150:53)\n at Object.<anonymous> (test/products/channels/channels/archive_channel.e2e.ts:117:9)\n"
},
{
"leaks": false,
"numFailingTests": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842780776,
"runtime": 89273,
"slow": true,
"start": 1765842691503
},
"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": 399,
"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": 2146,
"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)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765842828864,
"runtime": 47919,
"slow": true,
"start": 1765842780945
},
"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": 435,
"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": 9622,
"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": 1765842871273,
"runtime": 42238,
"slow": true,
"start": 1765842829035
},
"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": 423,
"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": 1297,
"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": 1592,
"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": 1303,
"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": 1293,
"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": 1765842918140,
"runtime": 46749,
"slow": true,
"start": 1765842871391
},
"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": 433,
"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": 8523,
"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": 1765842959321,
"runtime": 41087,
"slow": true,
"start": 1765842918234
},
"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": 397,
"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": 1447,
"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": 1281,
"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": 1401,
"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": 1646,
"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": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843008742,
"runtime": 49298,
"slow": true,
"start": 1765842959444
},
"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": 412,
"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": 11673,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n at DisplaySettingsScreen.toBeVisible (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/ui/screen/display_settings.ts:32:61)\n at Object.<anonymous> (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/test/products/channels/account/theme_display_settings.e2e.ts:71:37)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"title": "MM-T5111_2 - should be able to select a theme and save by tapping navigation back button"
}
],
"failureMessage": " ● Account - Settings - Theme Display Settings › MM-T5111_2 - should be able to select a theme and save by tapping navigation back button\n\n Test Failed: 10.0sec timeout expired without matching of given matcher: not null\n\n \u001b[0m \u001b[90m 30 |\u001b[39m\n \u001b[90m 31 |\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 32 |\u001b[39m \u001b[36mawait\u001b[39m waitFor(\u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mdisplaySettingsScreen)\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 33 |\u001b[39m\n \u001b[90m 34 |\u001b[39m \u001b[36mreturn\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39mdisplaySettingsScreen\u001b[33m;\u001b[39m\n \u001b[90m 35 |\u001b[39m }\u001b[33m;\u001b[39m\u001b[0m\n\n at DisplaySettingsScreen.toBeVisible (support/ui/screen/display_settings.ts:32:61)\n at Object.<anonymous> (test/products/channels/account/theme_display_settings.e2e.ts:71:37)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843060091,
"runtime": 51282,
"slow": true,
"start": 1765843008809
},
"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": 317,
"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": 13441,
"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": 0,
"numPassingTests": 14,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843208117,
"runtime": 147931,
"slow": true,
"start": 1765843060186
},
"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": 7714,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_1 - should suggest user based on username",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_1 - should suggest user based on username"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6210,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_2 - should suggest user based on nickname",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_2 - should suggest user based on nickname"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6309,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_3 - should suggest user based on first name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_3 - should suggest user based on first name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6310,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_4 - should suggest user based on last name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_4 - should suggest user based on last name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6208,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_5 - should suggest user based on lowercase first name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_5 - should suggest user based on lowercase first name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6159,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_6 - should suggest user based on lowercase last name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_6 - should suggest user based on lowercase last name"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 8803,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_7 - should suggest user based on full name with space",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_7 - should suggest user based on full name with space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 6939,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4878_8 - should suggest user based on partial full name with space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 10529,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4878_9 - should stop suggesting user after full name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 5307,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4878_10 - should stop suggesting user when keyword is not associated with any user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 7970,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_11 - should be able to select at-mention multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_11 - should be able to select at-mention multiple times"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 13338,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_12 - should not be able to autocomplete deactivated user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_12 - should not be able to autocomplete deactivated user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 8312,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_13 - should be able to autocomplete out of channel user",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_13 - should be able to autocomplete out of channel user"
},
{
"ancestorTitles": [
"Autocomplete - At-Mention"
],
"duration": 9192,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - At-Mention MM-T4878_14 - should include current user in autocomplete",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4878_14 - should include current user in autocomplete"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 10,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843336776,
"runtime": 128566,
"slow": true,
"start": 1765843208210
},
"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": 8748,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_1 - should suggest channel based on channel name",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_1 - should suggest channel based on channel name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 8244,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_2 - should suggest channel based on channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_2 - should suggest channel based on channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 8065,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_3 - should suggest channel based on lowercase channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_3 - should suggest channel based on lowercase channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 7022,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_4 - should suggest channel based on partial channel display name",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_4 - should suggest channel based on partial channel display name"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 10082,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4879_5 - should stop suggesting channel after channel display name with trailing space"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 5272,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4879_6 - should stop suggesting channel when keyword is not associated with any channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 8782,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_7 - should be able to select channel mention multiple times",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_7 - should be able to select channel mention multiple times"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 16902,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_8 - should be able to autocomplete archived channel",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_8 - should be able to autocomplete archived channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 7752,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4879_9 - should not be able to autocomplete out of team channel"
},
{
"ancestorTitles": [
"Autocomplete - Channel Mention"
],
"duration": 8136,
"failureDetails": [],
"failureMessages": [],
"fullName": "Autocomplete - Channel Mention MM-T4879_10 - should include current channel in autocomplete",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "passed",
"title": "MM-T4879_10 - should include current channel in autocomplete"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843704865,
"runtime": 153772,
"slow": true,
"start": 1765843551093
},
"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": 9978,
"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": 10580,
"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": 12388,
"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": 12409,
"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": 11648,
"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": 13610,
"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": 4,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843790836,
"runtime": 85831,
"slow": true,
"start": 1765843705005
},
"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": 19829,
"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/threads/follow_and_unfollow_thread.e2e.ts:78:52)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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": "failed",
"title": "MM-T4806_1 - should be able to follow/unfollow a thread via thread navigation"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 10710,
"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/follow_and_unfollow_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 - 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": "failed",
"title": "MM-T4806_2 - should be able to follow/unfollow a thread via post footer"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 10771,
"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/follow_and_unfollow_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 - 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": "failed",
"title": "MM-T4806_3 - should be able to follow/unfollow a thread via post options"
},
{
"ancestorTitles": [
"Threads - Follow and Unfollow Thread"
],
"duration": 10715,
"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/follow_and_unfollow_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 _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 - 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": "failed",
"title": "MM-T4806_4 - should be able to unfollow a thread via thread options"
}
],
"failureMessage": " ● Threads - Follow and Unfollow Thread › MM-T4806_1 - should be able to follow/unfollow a thread via thread navigation\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 76 |\u001b[39m\n \u001b[90m 77 |\u001b[39m \u001b[90m// * Verify thread is followed by user via thread navigation\u001b[39m\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 78 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mThreadScreen\u001b[39m\u001b[33m.\u001b[39mfollowingButton)\u001b[33m.\u001b[39mtoBeVisible()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 79 |\u001b[39m\n \u001b[90m 80 |\u001b[39m \u001b[90m// # Go back to channel list screen\u001b[39m\n \u001b[90m 81 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mThreadScreen\u001b[39m\u001b[33m.\u001b[39mback()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/threads/follow_and_unfollow_thread.e2e.ts:78:52)\n\n ● Threads - Follow and Unfollow Thread › MM-T4806_2 - should be able to follow/unfollow a thread via post footer\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/follow_and_unfollow_thread.e2e.ts:48:33)\n\n ● Threads - Follow and Unfollow Thread › MM-T4806_3 - should be able to follow/unfollow a thread via post options\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/follow_and_unfollow_thread.e2e.ts:48:33)\n\n ● Threads - Follow and Unfollow Thread › MM-T4806_4 - should be able to unfollow 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 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/follow_and_unfollow_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/follow_and_unfollow_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/follow_and_unfollow_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": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843914145,
"runtime": 123166,
"slow": true,
"start": 1765843790979
},
"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": 1805,
"failureDetails": [],
"failureMessages": [],
"fullName": "Threads - Global Threads MM-T4805_1 - should match elements on global threads screen",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "passed",
"title": "MM-T4805_1 - should match elements on global threads screen"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 26928,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4805_2 - should be able to go to a thread a user started and followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 21245,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4805_3 - should not display a thread a user started but not followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 21092,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4805_4 - should be able to go to a thread a user replied to and followed"
},
{
"ancestorTitles": [
"Threads - Global Threads"
],
"duration": 18027,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4805_5 - should not display a thread a user replied to but not followed"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 3,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844026241,
"runtime": 111940,
"slow": true,
"start": 1765843914301
},
"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": 24112,
"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": 31900,
"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": 22957,
"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": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844125806,
"runtime": 99408,
"slow": true,
"start": 1765844026398
},
"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": 32447,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4810_1 - should be able to open a thread in channel via thread options"
},
{
"ancestorTitles": [
"Threads - Open Thread in Channel"
],
"duration": 34858,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4810_2 - should be able to open a thread in channel by permalink"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844215163,
"runtime": 89200,
"slow": true,
"start": 1765844125963
},
"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": 31129,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4809_1 - should be able to reply to a thread via thread options"
},
{
"ancestorTitles": [
"Threads - Reply to Thread"
],
"duration": 26672,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4809_2 - should be able to reply to a thread by opening thread"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844305275,
"runtime": 89913,
"slow": true,
"start": 1765844215362
},
"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": 33938,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4808_1 - should be able to save/unsave a thread via thread options"
},
{
"ancestorTitles": [
"Threads - Save and Unsave Thread"
],
"duration": 23916,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T4808_2 - should be able to save/unsave a thread via thread overview"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 5,
"numPassingTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765844339792,
"runtime": 34403,
"slow": true,
"start": 1765844305389
},
"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/playbooks/playbooks.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Playbooks - Basic"
],
"duration": 646,
"failureDetails": [
{}
],
"failureMessages": [
"Error: Failed to create playbook: AxiosError: Request failed with status code 404\n at Object.apiCreatePlaybook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/server_api/playbooks.ts:469:15)\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/playbooks/playbooks.e2e.ts:55:34)"
],
"fullName": "Playbooks - Basic should verify in-progress playbook information in Channel Header and Channel Info ",
"invocations": 1,
"location": null,
"numPassingAsserts": 3,
"retryReasons": [],
"status": "failed",
"title": "should verify in-progress playbook information in Channel Header and Channel Info "
},
{
"ancestorTitles": [
"Playbooks - Basic"
],
"duration": 611,
"failureDetails": [
{}
],
"failureMessages": [
"Error: Failed to create playbook: AxiosError: Request failed with status code 404\n at Object.apiCreatePlaybook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/server_api/playbooks.ts:469:15)\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/playbooks/playbooks.e2e.ts:97:34)"
],
"fullName": "Playbooks - Basic should verify finished playbooks are listed in the Finished tab",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "should verify finished playbooks are listed in the Finished tab"
},
{
"ancestorTitles": [
"Playbooks - Basic"
],
"duration": 601,
"failureDetails": [
{}
],
"failureMessages": [
"Error: Failed to create playbook: AxiosError: Request failed with status code 404\n at Object.apiCreatePlaybook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/server_api/playbooks.ts:469:15)\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/playbooks/playbooks.e2e.ts:130:34)"
],
"fullName": "Playbooks - Basic should verify scrolling of playbooks in the In Progress tab",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "should verify scrolling of playbooks in the In Progress tab"
},
{
"ancestorTitles": [
"Playbooks - Basic"
],
"duration": 620,
"failureDetails": [
{}
],
"failureMessages": [
"Error: Failed to create playbook: AxiosError: Request failed with status code 404\n at Object.apiCreatePlaybook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/server_api/playbooks.ts:469:15)\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/playbooks/playbooks.e2e.ts:166:34)"
],
"fullName": "Playbooks - Basic should verify details of a checklist in a particular playbook",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "should verify details of a checklist in a particular playbook"
},
{
"ancestorTitles": [
"Playbooks - Basic"
],
"duration": 611,
"failureDetails": [
{}
],
"failureMessages": [
"Error: Failed to create playbook: AxiosError: Request failed with status code 404\n at Object.apiCreatePlaybook (/home/runner/work/mattermost-mobile/mattermost-mobile/detox/e2e/support/server_api/playbooks.ts:469:15)\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/playbooks/playbooks.e2e.ts:203:34)"
],
"fullName": "Playbooks - Basic should verify the participants list in the playbook",
"invocations": 1,
"location": null,
"numPassingAsserts": 0,
"retryReasons": [],
"status": "failed",
"title": "should verify the participants list in the playbook"
}
],
"failureMessage": " ● Playbooks - Basic › should verify in-progress playbook information in Channel Header and Channel Info \n\n Failed to create playbook: AxiosError: Request failed with status code 404\n\n \u001b[0m \u001b[90m 467 |\u001b[39m \u001b[36mreturn\u001b[39m response\u001b[33m.\u001b[39mdata\u001b[33m;\u001b[39m\n \u001b[90m 468 |\u001b[39m } \u001b[36mcatch\u001b[39m (err) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 469 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`Failed to create playbook: ${err}`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 470 |\u001b[39m }\n \u001b[90m 471 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 472 |\u001b[39m\u001b[0m\n\n at Object.apiCreatePlaybook (support/server_api/playbooks.ts:469:15)\n at Object.<anonymous> (test/products/playbooks/playbooks.e2e.ts:55:34)\n\n ● Playbooks - Basic › should verify finished playbooks are listed in the Finished tab\n\n Failed to create playbook: AxiosError: Request failed with status code 404\n\n \u001b[0m \u001b[90m 467 |\u001b[39m \u001b[36mreturn\u001b[39m response\u001b[33m.\u001b[39mdata\u001b[33m;\u001b[39m\n \u001b[90m 468 |\u001b[39m } \u001b[36mcatch\u001b[39m (err) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 469 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`Failed to create playbook: ${err}`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 470 |\u001b[39m }\n \u001b[90m 471 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 472 |\u001b[39m\u001b[0m\n\n at Object.apiCreatePlaybook (support/server_api/playbooks.ts:469:15)\n at Object.<anonymous> (test/products/playbooks/playbooks.e2e.ts:97:34)\n\n ● Playbooks - Basic › should verify scrolling of playbooks in the In Progress tab\n\n Failed to create playbook: AxiosError: Request failed with status code 404\n\n \u001b[0m \u001b[90m 467 |\u001b[39m \u001b[36mreturn\u001b[39m response\u001b[33m.\u001b[39mdata\u001b[33m;\u001b[39m\n \u001b[90m 468 |\u001b[39m } \u001b[36mcatch\u001b[39m (err) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 469 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`Failed to create playbook: ${err}`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 470 |\u001b[39m }\n \u001b[90m 471 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 472 |\u001b[39m\u001b[0m\n\n at Object.apiCreatePlaybook (support/server_api/playbooks.ts:469:15)\n at Object.<anonymous> (test/products/playbooks/playbooks.e2e.ts:130:34)\n\n ● Playbooks - Basic › should verify details of a checklist in a particular playbook\n\n Failed to create playbook: AxiosError: Request failed with status code 404\n\n \u001b[0m \u001b[90m 467 |\u001b[39m \u001b[36mreturn\u001b[39m response\u001b[33m.\u001b[39mdata\u001b[33m;\u001b[39m\n \u001b[90m 468 |\u001b[39m } \u001b[36mcatch\u001b[39m (err) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 469 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`Failed to create playbook: ${err}`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 470 |\u001b[39m }\n \u001b[90m 471 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 472 |\u001b[39m\u001b[0m\n\n at Object.apiCreatePlaybook (support/server_api/playbooks.ts:469:15)\n at Object.<anonymous> (test/products/playbooks/playbooks.e2e.ts:166:34)\n\n ● Playbooks - Basic › should verify the participants list in the playbook\n\n Failed to create playbook: AxiosError: Request failed with status code 404\n\n \u001b[0m \u001b[90m 467 |\u001b[39m \u001b[36mreturn\u001b[39m response\u001b[33m.\u001b[39mdata\u001b[33m;\u001b[39m\n \u001b[90m 468 |\u001b[39m } \u001b[36mcatch\u001b[39m (err) {\n \u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 469 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`Failed to create playbook: ${err}`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 470 |\u001b[39m }\n \u001b[90m 471 |\u001b[39m }\u001b[33m;\u001b[39m\n \u001b[90m 472 |\u001b[39m\u001b[0m\n\n at Object.apiCreatePlaybook (support/server_api/playbooks.ts:469:15)\n at Object.<anonymous> (test/products/playbooks/playbooks.e2e.ts:203:34)\n"
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 6,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843546516,
"runtime": 289630,
"slow": true,
"start": 1765843256886
},
"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/messaging/message_permalink.e2e.ts",
"testResults": [
{
"ancestorTitles": [
"Messaging - Message Permalink Preview"
],
"duration": 17257,
"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": 26322,
"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": 32764,
"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": 45655,
"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": 25787,
"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": 58246,
"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": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843591420,
"runtime": 44779,
"slow": true,
"start": 1765843546641
},
"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": 7744,
"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": 0,
"numPassingTests": 5,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843639712,
"runtime": 48151,
"slow": true,
"start": 1765843591561
},
"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": 443,
"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": 9499,
"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": 1691,
"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": 1851,
"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": 1421,
"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"
}
],
"failureMessage": null
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843676244,
"runtime": 36438,
"slow": true,
"start": 1765843639806
},
"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": 316,
"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": 1,
"numPassingTests": 1,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843713441,
"runtime": 37089,
"slow": true,
"start": 1765843676352
},
"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": 341,
"failureDetails": [],
"failureMessages": [],
"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": "passed",
"title": "MM-T5110_1 - should match elements on auto-responder notification settings screen"
},
{
"ancestorTitles": [
"Account - Settings - Auto-Responder Notification Settings"
],
"duration": 2280,
"failureDetails": [
{
"name": "DetoxRuntimeError"
}
],
"failureMessages": [
"Test Failed: '(an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"On\" 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 \"On\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"On\" view.getText() was \"Off\" transformed text was \"Off\"\nView Details: ReactTextView{id=1189, visibility=VISIBLE, width=56, 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.automatic_replies.option.info, root-is-layout-requested=false, has-input-connection=false, x=870.0, y=39.0, text=Off, 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/auto_responder_notification_settings.e2e.ts:73:77)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
],
"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_2 - should be able to change auto-responder 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 \"On\" 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 \"On\" and view has effective visibility <VISIBLE>)\n Got: an instance of android.widget.TextView and view.getText() with or without transformation to match: is \"On\" view.getText() was \"Off\" transformed text was \"Off\"\n View Details: ReactTextView{id=1189, visibility=VISIBLE, width=56, 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.automatic_replies.option.info, root-is-layout-requested=false, has-input-connection=false, x=870.0, y=39.0, text=Off, input-type=0, ime-target=false, has-links=false}\n\n \u001b[0m \u001b[90m 71 |\u001b[39m \u001b[90m// * Verify on notification settings screen and automatic replies is enabled\u001b[39m\n \u001b[90m 72 |\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 73 |\u001b[39m \u001b[36mawait\u001b[39m expect(\u001b[33mNotificationSettingsScreen\u001b[39m\u001b[33m.\u001b[39mautomaticRepliesOptionInfo)\u001b[33m.\u001b[39mtoHaveText(\u001b[32m'On'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 74 |\u001b[39m\n \u001b[90m 75 |\u001b[39m \u001b[90m// * Go back to auto-responder notification settings screen\u001b[39m\n \u001b[90m 76 |\u001b[39m \u001b[36mawait\u001b[39m \u001b[33mAutoResponderNotificationSettingsScreen\u001b[39m\u001b[33m.\u001b[39mopen()\u001b[33m;\u001b[39m\u001b[0m\n\n at Object.<anonymous> (test/products/channels/account/auto_responder_notification_settings.e2e.ts:73:77)\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/auto_responder_notification_settings.e2e.ts:52: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/auto_responder_notification_settings.e2e.ts:52:42)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"
}
},
{
"leaks": false,
"numFailingTests": 0,
"numPassingTests": 2,
"numPendingTests": 0,
"numTodoTests": 0,
"openHandles": [],
"perfStats": {
"end": 1765843754793,
"runtime": 41255,
"slow": true,
"start": 1765843713538
},
"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": 337,
"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": 3551,
"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": 1765843972504,
"runtime": 217617,
"slow": true,
"start": 1765843754887
},
"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": 3004,
"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": 14585,
"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": 21966,
"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": 16879,
"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": 15465,
"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": 31725,
"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": 24252,
"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": 56875,
"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": 1765844013253,
"runtime": 40625,
"slow": true,
"start": 1765843972628
},
"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": 348,
"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": 1527,
"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": 1296,
"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": 1287,
"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": 1765844058766,
"runtime": 45379,
"slow": true,
"start": 1765844013387
},
"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": 1751,
"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": 10182,
"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
}
],
"wasInterrupted": false
}