Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE]ci(maestro): add ios maestro flow #9618

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
51 changes: 51 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,16 @@ commands:
- android/build
- android/app/build
- node_modules/react-native-config
install-maestro:
steps:
- run:
name: Install Maestro
command: curl -Ls "https://get.maestro.mobile.dev" | bash
maestro-run-tests:
steps:
- run:
name: Run tests
command: maestro test e2e/config.yml
jobs:
detect-secrets:
docker:
Expand Down Expand Up @@ -329,6 +339,38 @@ jobs:
- .manifests
- dist

maestro-test-app-ios:
environment:
MAESTRO_APP_ID: net.artsy.artsy
MAESTRO_DRIVER_STARTUP_TIMEOUT: 60000
CI: 1

macos:
xcode: 15.1
resource_class: macos.m1.medium.gen1

steps:
- checkout
- macos/install-rosetta
- install-node
- setup-awscli
- setup-env-file
- install-node-modules
- install-maestro
- run-relay-compiler
- install-gems
- run: ls -la
- run: ./scripts/setup/download-fonts
- run: ./scripts/setup/download-assets-ios
- install-cocoapods
- macos/preboot-simulator:
version: "17.2"
platform: "iOS"
device: "iPhone 15 Pro"
- run: yarn maestro:ios:release:build
- run: yarn maestro:ios:release:install
- run: maestro test e2e/config.yml

build-test-app-ios:
environment:
BUNDLE_PATH: .vendor # path to install gems and use for caching
Expand Down Expand Up @@ -513,3 +555,12 @@ workflows:
requires:
- build-test-app-ios
- build-test-app-android

- approve-maestro-ios-test:
type: approval
# requires:
# - build-test-app-ios

- maestro-test-app-ios:
requires:
- approve-maestro-ios-test
3 changes: 2 additions & 1 deletion e2e/flows/onboarding/login.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ appId: ${MAESTRO_APP_ID}
- launchApp:
clearState: true
clearKeychain: true
permissions: { all: deny }
- tapOn: "Log in.*"
- tapOn: "Continue with Email.*"
- inputText: ${MAESTRO_TEST_EMAIL}
Expand All @@ -28,4 +29,4 @@ appId: ${MAESTRO_APP_ID}
commands:
- tapOn:
id: "Home Grabber"
- assertVisible: "New Works for You"
- assertVisible: "Activity"
1 change: 1 addition & 0 deletions e2e/flows/onboarding/signup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ appId: ${MAESTRO_APP_ID}
- launchApp:
clearState: true
clearKeychain: true
permissions: { all: deny }
- tapOn: "Sign up.*"
- tapOn: "Continue with Email.*"
- runScript:
Expand Down
2 changes: 1 addition & 1 deletion e2e/flows/onboarding/signupWithoutOnboarding.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ appId: ${MAESTRO_APP_ID}
- runFlow:
file: signup.yml
- tapOn: "Skip.*"
- assertVisible: "New Works for You"
- assertVisible: "Activity"