diff --git a/.github/workflows/maestro.yml b/.github/workflows/maestro.yml index d6f56cf79a..23b5fc12a0 100644 --- a/.github/workflows/maestro.yml +++ b/.github/workflows/maestro.yml @@ -55,10 +55,10 @@ jobs: # app-file should point to an x86 compatible APK file, so upload the x86_64 one (much smaller than the universal APK). app-file: app/build/outputs/apk/gplay/debug/app-gplay-x86_64-debug.apk env: | - USERNAME=maestroelement - PASSWORD=${{ secrets.MATRIX_MAESTRO_ACCOUNT_PASSWORD }} - RECOVERY_KEY=${{ secrets.MATRIX_MAESTRO_ACCOUNT_RECOVERY_KEY }} - ROOM_NAME=MyRoom - INVITEE1_MXID=@maestroelement2:matrix.org - INVITEE2_MXID=@maestroelement3:matrix.org - APP_ID=io.element.android.x.debug + MAESTRO_USERNAME=maestroelement + MAESTRO_PASSWORD=${{ secrets.MATRIX_MAESTRO_ACCOUNT_PASSWORD }} + MAESTRO_RECOVERY_KEY=${{ secrets.MATRIX_MAESTRO_ACCOUNT_RECOVERY_KEY }} + MAESTRO_ROOM_NAME=MyRoom + MAESTRO_INVITEE1_MXID=@maestroelement2:matrix.org + MAESTRO_INVITEE2_MXID=@maestroelement3:matrix.org + MAESTRO_APP_ID=io.element.android.x.debug diff --git a/.maestro/README.md b/.maestro/README.md index aa667c81c8..c0ee525ac7 100644 --- a/.maestro/README.md +++ b/.maestro/README.md @@ -22,13 +22,13 @@ From root dir of the project ```shell maestro test \ - -e APP_ID=io.element.android.x.debug \ - -e USERNAME=user1 \ - -e PASSWORD=123 \ - -e RECOVERY_KEY=ABC \ - -e ROOM_NAME="MyRoom" \ - -e INVITEE1_MXID=user2 \ - -e INVITEE2_MXID=user3 \ + -e MAESTRO_APP_ID=io.element.android.x.debug \ + -e MAESTRO_USERNAME=user1 \ + -e MAESTRO_PASSWORD=123 \ + -e MAESTRO_RECOVERY_KEY=ABC \ + -e MAESTRO_ROOM_NAME="MyRoom" \ + -e MAESTRO_INVITEE1_MXID=user2 \ + -e MAESTRO_INVITEE2_MXID=user3 \ .maestro/allTests.yaml ``` diff --git a/.maestro/allTests.yaml b/.maestro/allTests.yaml index cd3ca342e2..927a1cb0e5 100644 --- a/.maestro/allTests.yaml +++ b/.maestro/allTests.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- ## Check that all env variables required in the whole test suite are declared (to fail faster) - runScript: ./scripts/checkEnv.js diff --git a/.maestro/scripts/checkEnv.js b/.maestro/scripts/checkEnv.js index 638f4c5232..fa61d3c763 100644 --- a/.maestro/scripts/checkEnv.js +++ b/.maestro/scripts/checkEnv.js @@ -1,10 +1,10 @@ // This array contains all the required environment variable. When adding a variable, add it here also. // If a variable is missing, an error will occur. -if (APP_ID == null) throw "Fatal: missing env variable APP_ID" -if (USERNAME == null) throw "Fatal: missing env variable USERNAME" -if (PASSWORD == null) throw "Fatal: missing env variable PASSWORD" -if (RECOVERY_KEY == null) throw "Fatal: missing env variable RECOVERY_KEY" -if (ROOM_NAME == null) throw "Fatal: missing env variable ROOM_NAME" -if (INVITEE1_MXID == null) throw "Fatal: missing env variable INVITEE1_MXID" -if (INVITEE2_MXID == null) throw "Fatal: missing env variable INVITEE2_MXID" +if (MAESTRO_APP_ID == null) throw "Fatal: missing env variable MAESTRO_APP_ID" +if (MAESTRO_USERNAME == null) throw "Fatal: missing env variable MAESTRO_USERNAME" +if (MAESTRO_PASSWORD == null) throw "Fatal: missing env variable MAESTRO_PASSWORD" +if (MAESTRO_RECOVERY_KEY == null) throw "Fatal: missing env variable MAESTRO_RECOVERY_KEY" +if (MAESTRO_ROOM_NAME == null) throw "Fatal: missing env variable MAESTRO_ROOM_NAME" +if (MAESTRO_INVITEE1_MXID == null) throw "Fatal: missing env variable MAESTRO_INVITEE1_MXID" +if (MAESTRO_INVITEE2_MXID == null) throw "Fatal: missing env variable MAESTRO_INVITEE2_MXID" diff --git a/.maestro/tests/account/changeServer.yaml b/.maestro/tests/account/changeServer.yaml index 1971e5a71b..7ae4c3450f 100644 --- a/.maestro/tests/account/changeServer.yaml +++ b/.maestro/tests/account/changeServer.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - tapOn: id: "login-change_server" diff --git a/.maestro/tests/account/login.yaml b/.maestro/tests/account/login.yaml index 6126e34459..b2abb5da13 100644 --- a/.maestro/tests/account/login.yaml +++ b/.maestro/tests/account/login.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - tapOn: "Continue" - runFlow: ../assertions/assertLoginDisplayed.yaml @@ -9,7 +9,7 @@ appId: ${APP_ID} id: "login-continue" - tapOn: id: "login-email_username" -- inputText: ${USERNAME} +- inputText: ${MAESTRO_USERNAME} - pressKey: Enter - tapOn: id: "login-password" @@ -20,7 +20,7 @@ appId: ${APP_ID} - tapOn: id: "login-password" - eraseText: 20 -- inputText: ${PASSWORD} +- inputText: ${MAESTRO_PASSWORD} - pressKey: Enter - tapOn: "Continue" - runFlow: ../assertions/assertWelcomeScreenDisplayed.yaml diff --git a/.maestro/tests/account/logout.yaml b/.maestro/tests/account/logout.yaml index 3019f1d2c3..f27f5dada3 100644 --- a/.maestro/tests/account/logout.yaml +++ b/.maestro/tests/account/logout.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - tapOn: id: "home_screen-settings" diff --git a/.maestro/tests/assertions/assertAnalyticsDisplayed.yaml b/.maestro/tests/assertions/assertAnalyticsDisplayed.yaml index 9c63c99ffc..516dcc86ea 100644 --- a/.maestro/tests/assertions/assertAnalyticsDisplayed.yaml +++ b/.maestro/tests/assertions/assertAnalyticsDisplayed.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: visible: "Help improve Element X dbg" diff --git a/.maestro/tests/assertions/assertHomeDisplayed.yaml b/.maestro/tests/assertions/assertHomeDisplayed.yaml index ca409705e1..40b6dc3e67 100644 --- a/.maestro/tests/assertions/assertHomeDisplayed.yaml +++ b/.maestro/tests/assertions/assertHomeDisplayed.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: visible: "All Chats" diff --git a/.maestro/tests/assertions/assertInitDisplayed.yaml b/.maestro/tests/assertions/assertInitDisplayed.yaml index 9424f382c1..6e895d9bbf 100644 --- a/.maestro/tests/assertions/assertInitDisplayed.yaml +++ b/.maestro/tests/assertions/assertInitDisplayed.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: visible: "Be in your element" diff --git a/.maestro/tests/assertions/assertLoginDisplayed.yaml b/.maestro/tests/assertions/assertLoginDisplayed.yaml index b18078f916..6d8558c38e 100644 --- a/.maestro/tests/assertions/assertLoginDisplayed.yaml +++ b/.maestro/tests/assertions/assertLoginDisplayed.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: visible: "Change account provider" diff --git a/.maestro/tests/assertions/assertRoomListSynced.yaml b/.maestro/tests/assertions/assertRoomListSynced.yaml index 5fcd6e093e..0eb1c52ac2 100644 --- a/.maestro/tests/assertions/assertRoomListSynced.yaml +++ b/.maestro/tests/assertions/assertRoomListSynced.yaml @@ -1,5 +1,5 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: - visible: ${ROOM_NAME} + visible: ${MAESTRO_ROOM_NAME} timeout: 10000 diff --git a/.maestro/tests/assertions/assertWelcomeScreenDisplayed.yaml b/.maestro/tests/assertions/assertWelcomeScreenDisplayed.yaml index 3fbd9d2513..340d21ff2e 100644 --- a/.maestro/tests/assertions/assertWelcomeScreenDisplayed.yaml +++ b/.maestro/tests/assertions/assertWelcomeScreenDisplayed.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - extendedWaitUntil: visible: diff --git a/.maestro/tests/init.yaml b/.maestro/tests/init.yaml index acd5f86dfd..6cb056d96d 100644 --- a/.maestro/tests/init.yaml +++ b/.maestro/tests/init.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - clearState - launchApp: diff --git a/.maestro/tests/roomList/createAndDeleteDM.yaml b/.maestro/tests/roomList/createAndDeleteDM.yaml index 6c2ebed11e..604263fbda 100644 --- a/.maestro/tests/roomList/createAndDeleteDM.yaml +++ b/.maestro/tests/roomList/createAndDeleteDM.yaml @@ -1,11 +1,11 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- # Purpose: Test the creation and deletion of a DM room. - tapOn: "Create a new conversation or room" - tapOn: "Search for someone" -- inputText: ${INVITEE1_MXID} +- inputText: ${MAESTRO_INVITEE1_MXID} - tapOn: - text: ${INVITEE1_MXID} + text: ${MAESTRO_INVITEE1_MXID} index: 1 - takeScreenshot: build/maestro/330-createAndDeleteDM - tapOn: "maestroelement2" diff --git a/.maestro/tests/roomList/createAndDeleteRoom.yaml b/.maestro/tests/roomList/createAndDeleteRoom.yaml index 9fed7707dd..6061915493 100644 --- a/.maestro/tests/roomList/createAndDeleteRoom.yaml +++ b/.maestro/tests/roomList/createAndDeleteRoom.yaml @@ -1,12 +1,12 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- # Purpose: Test the creation and deletion of a room - tapOn: "Create a new conversation or room" - tapOn: "New room" - tapOn: "Search for someone" -- inputText: ${INVITEE1_MXID} +- inputText: ${MAESTRO_INVITEE1_MXID} - tapOn: - text: ${INVITEE1_MXID} + text: ${MAESTRO_INVITEE1_MXID} index: 1 - tapOn: "Next" - tapOn: "e.g. your project name" @@ -19,9 +19,9 @@ appId: ${APP_ID} - tapOn: "Invite people" # assert there's 1 member and 1 invitee - tapOn: "Search for someone" -- inputText: ${INVITEE2_MXID} +- inputText: ${MAESTRO_INVITEE2_MXID} - tapOn: - text: ${INVITEE2_MXID} + text: ${MAESTRO_INVITEE2_MXID} index: 1 - tapOn: "Invite" - tapOn: "Back" diff --git a/.maestro/tests/roomList/roomContextMenu.yaml b/.maestro/tests/roomList/roomContextMenu.yaml index c2a8764558..160f8a31f7 100644 --- a/.maestro/tests/roomList/roomContextMenu.yaml +++ b/.maestro/tests/roomList/roomContextMenu.yaml @@ -1,13 +1,13 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- # Purpose: Test the context menu of a room in the room list -- longPressOn: ${ROOM_NAME} +- longPressOn: ${MAESTRO_ROOM_NAME} - takeScreenshot: build/maestro/310-RoomList-ContextMenu - tapOn: text: "Settings" index: 0 - tapOn: "Back" -- longPressOn: ${ROOM_NAME} +- longPressOn: ${MAESTRO_ROOM_NAME} - tapOn: text: "Leave room" index: 0 diff --git a/.maestro/tests/roomList/roomList.yaml b/.maestro/tests/roomList/roomList.yaml index 6365759e72..5cc9e269c5 100644 --- a/.maestro/tests/roomList/roomList.yaml +++ b/.maestro/tests/roomList/roomList.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - runFlow: searchRoomList.yaml - takeScreenshot: build/maestro/300-RoomList diff --git a/.maestro/tests/roomList/searchRoomList.yaml b/.maestro/tests/roomList/searchRoomList.yaml index 5939c0bc5e..8b41c4d259 100644 --- a/.maestro/tests/roomList/searchRoomList.yaml +++ b/.maestro/tests/roomList/searchRoomList.yaml @@ -1,10 +1,10 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - runFlow: ../assertions/assertRoomListSynced.yaml - tapOn: "search" -- inputText: ${ROOM_NAME.substring(0, 3)} +- inputText: ${MAESTRO_ROOM_NAME.substring(0, 3)} - takeScreenshot: build/maestro/400-SearchRoom -- tapOn: ${ROOM_NAME} +- tapOn: ${MAESTRO_ROOM_NAME} # Back from timeline - back - assertVisible: "MyR" diff --git a/.maestro/tests/roomList/timeline/messages/location.yaml b/.maestro/tests/roomList/timeline/messages/location.yaml index 73dca6eeb4..c9382bd30c 100644 --- a/.maestro/tests/roomList/timeline/messages/location.yaml +++ b/.maestro/tests/roomList/timeline/messages/location.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - takeScreenshot: build/maestro/520-Timeline - tapOn: "Add attachment" diff --git a/.maestro/tests/roomList/timeline/messages/poll.yaml b/.maestro/tests/roomList/timeline/messages/poll.yaml index 65495dda60..c6fffebd7d 100644 --- a/.maestro/tests/roomList/timeline/messages/poll.yaml +++ b/.maestro/tests/roomList/timeline/messages/poll.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - takeScreenshot: build/maestro/530-Timeline - tapOn: "Add attachment" diff --git a/.maestro/tests/roomList/timeline/messages/text.yaml b/.maestro/tests/roomList/timeline/messages/text.yaml index 963b2cf9e9..6767886d8d 100644 --- a/.maestro/tests/roomList/timeline/messages/text.yaml +++ b/.maestro/tests/roomList/timeline/messages/text.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - takeScreenshot: build/maestro/510-Timeline - tapOn: diff --git a/.maestro/tests/roomList/timeline/timeline.yaml b/.maestro/tests/roomList/timeline/timeline.yaml index 1acb10a9aa..5f85366e9e 100644 --- a/.maestro/tests/roomList/timeline/timeline.yaml +++ b/.maestro/tests/roomList/timeline/timeline.yaml @@ -1,7 +1,7 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- # This is the name of one room -- tapOn: ${ROOM_NAME} +- tapOn: ${MAESTRO_ROOM_NAME} - takeScreenshot: build/maestro/500-Timeline - runFlow: messages/text.yaml - runFlow: messages/location.yaml diff --git a/.maestro/tests/settings/settings.yaml b/.maestro/tests/settings/settings.yaml index d5f1e110e5..c77d118a3b 100644 --- a/.maestro/tests/settings/settings.yaml +++ b/.maestro/tests/settings/settings.yaml @@ -1,4 +1,4 @@ -appId: ${APP_ID} +appId: ${MAESTRO_APP_ID} --- - tapOn: id: "home_screen-settings"