From 406e7c61973bf682d4fbd08b419ea57aa9a5564b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateo=20Guzm=C3=A1n?= Date: Sun, 25 May 2025 12:47:57 +0200 Subject: [PATCH 1/4] Search instead of scroll until visible for e2e tests --- packages/rn-tester/.maestro/button.yml | 13 +++++---- packages/rn-tester/.maestro/flatlist.yml | 13 +++++---- packages/rn-tester/.maestro/image.yml | 13 +++++---- .../.maestro/legacy-native-module.yml | 13 +++++---- packages/rn-tester/.maestro/modal.yml | 13 +++++---- .../rn-tester/.maestro/new-arch-examples.yml | 14 +++++---- packages/rn-tester/.maestro/pressable.yml | 13 +++++---- packages/rn-tester/.maestro/text.yml | 29 +++++++++---------- 8 files changed, 70 insertions(+), 51 deletions(-) diff --git a/packages/rn-tester/.maestro/button.yml b/packages/rn-tester/.maestro/button.yml index a3df9a24dcef..23f67c901ead 100644 --- a/packages/rn-tester/.maestro/button.yml +++ b/packages/rn-tester/.maestro/button.yml @@ -2,11 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Button" - direction: DOWN - speed: 40 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Button" +- assertVisible: + id: "Button" - tapOn: id: "Button" - tapOn: diff --git a/packages/rn-tester/.maestro/flatlist.yml b/packages/rn-tester/.maestro/flatlist.yml index 17587f86a145..10ad036ba0e4 100644 --- a/packages/rn-tester/.maestro/flatlist.yml +++ b/packages/rn-tester/.maestro/flatlist.yml @@ -2,11 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Flatlist" - direction: DOWN - speed: 40 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Flatlist" +- assertVisible: + id: "Flatlist" - tapOn: id: "Flatlist" - tapOn: diff --git a/packages/rn-tester/.maestro/image.yml b/packages/rn-tester/.maestro/image.yml index f963352f4b51..520b0c68d314 100644 --- a/packages/rn-tester/.maestro/image.yml +++ b/packages/rn-tester/.maestro/image.yml @@ -2,11 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Image" - direction: DOWN - speed: 40 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Image" +- assertVisible: + id: "Image" - tapOn: id: "Image" - assertVisible: "Plain Network Image with `source` prop." diff --git a/packages/rn-tester/.maestro/legacy-native-module.yml b/packages/rn-tester/.maestro/legacy-native-module.yml index 38dad5da82db..424317d579c2 100644 --- a/packages/rn-tester/.maestro/legacy-native-module.yml +++ b/packages/rn-tester/.maestro/legacy-native-module.yml @@ -5,11 +5,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo text: "APIs" - tapOn: id: "apis-tab" -- scrollUntilVisible: - element: - id: "Legacy Native Module" - direction: DOWN - speed: 40 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Legacy Native Module" +- assertVisible: + id: "Legacy Native Module" - tapOn: id: "Legacy Native Module" - tapOn: diff --git a/packages/rn-tester/.maestro/modal.yml b/packages/rn-tester/.maestro/modal.yml index 5fb489496b57..a5a84841b3ed 100644 --- a/packages/rn-tester/.maestro/modal.yml +++ b/packages/rn-tester/.maestro/modal.yml @@ -2,11 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Modal" - direction: DOWN - speed: 60 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Modal" +- assertVisible: + id: "Modal" - tapOn: id: "Modal" - assertVisible: diff --git a/packages/rn-tester/.maestro/new-arch-examples.yml b/packages/rn-tester/.maestro/new-arch-examples.yml index b7b8680cd26b..1f50b67c0c88 100644 --- a/packages/rn-tester/.maestro/new-arch-examples.yml +++ b/packages/rn-tester/.maestro/new-arch-examples.yml @@ -2,12 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "New Architecture Examples" - direction: DOWN - speed: 60 - visibilityPercentage: 100 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "New Architecture Examples" +- assertVisible: + id: "New Architecture Examples" - tapOn: id: "New Architecture Examples" - assertVisible: "HSBA: h: 0, s: 0, b: 0, a: 0" diff --git a/packages/rn-tester/.maestro/pressable.yml b/packages/rn-tester/.maestro/pressable.yml index 30942df17b80..92795b0895e4 100644 --- a/packages/rn-tester/.maestro/pressable.yml +++ b/packages/rn-tester/.maestro/pressable.yml @@ -2,11 +2,14 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Pressable" - direction: DOWN - speed: 40 +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" +- inputText: + text: "Pressable" +- assertVisible: + id: "Pressable" - tapOn: id: "Pressable" - assertVisible: diff --git a/packages/rn-tester/.maestro/text.yml b/packages/rn-tester/.maestro/text.yml index 93f6c230c61a..9bdfa85f9f01 100644 --- a/packages/rn-tester/.maestro/text.yml +++ b/packages/rn-tester/.maestro/text.yml @@ -2,23 +2,22 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- scrollUntilVisible: - element: - id: "Text" - direction: DOWN - speed: 60 - timeout: 60000 #ms - visibilityPercentage: 100 +- assertVisible: + id: "explorer_search" - tapOn: + id: "explorer_search" +- inputText: + text: "Text" +- assertVisible: id: "Text" -- assertVisible: "Text" -- scrollUntilVisible: - element: - id: "background-border-width" - direction: DOWN - speed: 20 - timeout: 60000 #ms - visibilityPercentage: 100 +- tapOn: + id: "Text" +- assertVisible: + id: "example_search" +- tapOn: + id: "example_search" +- inputText: + text: "Background Color and Border Width" - assertVisible: "Text with background color only" - assertVisible: "Text with background color and uniform borderRadii" - assertVisible: "Text with background color and non-uniform borders" From 43dfea82503775b8ee0348cd0fc07cadd4ad831c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateo=20Guzm=C3=A1n?= Date: Sun, 25 May 2025 13:25:29 +0200 Subject: [PATCH 2/4] Create a re-usable search step --- packages/rn-tester/.maestro/button.yml | 7 +------ packages/rn-tester/.maestro/flatlist.yml | 7 +------ .../rn-tester/.maestro/helpers/launch-app-and-search.yml | 5 +++++ packages/rn-tester/.maestro/helpers/search.yml | 6 ++++++ packages/rn-tester/.maestro/image.yml | 7 +------ packages/rn-tester/.maestro/legacy-native-module.yml | 5 +---- packages/rn-tester/.maestro/modal.yml | 7 +------ packages/rn-tester/.maestro/new-arch-examples.yml | 7 +------ packages/rn-tester/.maestro/pressable.yml | 7 +------ packages/rn-tester/.maestro/text.yml | 7 +------ 10 files changed, 19 insertions(+), 46 deletions(-) create mode 100644 packages/rn-tester/.maestro/helpers/launch-app-and-search.yml create mode 100644 packages/rn-tester/.maestro/helpers/search.yml diff --git a/packages/rn-tester/.maestro/button.yml b/packages/rn-tester/.maestro/button.yml index 23f67c901ead..b92fa67d697a 100644 --- a/packages/rn-tester/.maestro/button.yml +++ b/packages/rn-tester/.maestro/button.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Button" - assertVisible: diff --git a/packages/rn-tester/.maestro/flatlist.yml b/packages/rn-tester/.maestro/flatlist.yml index 10ad036ba0e4..cdcdb7ce5bab 100644 --- a/packages/rn-tester/.maestro/flatlist.yml +++ b/packages/rn-tester/.maestro/flatlist.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Flatlist" - assertVisible: diff --git a/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml b/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml new file mode 100644 index 000000000000..085ea25a283c --- /dev/null +++ b/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml @@ -0,0 +1,5 @@ +appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp +--- +- launchApp +- assertVisible: "Components" +- runFlow: ./search.yml \ No newline at end of file diff --git a/packages/rn-tester/.maestro/helpers/search.yml b/packages/rn-tester/.maestro/helpers/search.yml new file mode 100644 index 000000000000..4a25ef5598c3 --- /dev/null +++ b/packages/rn-tester/.maestro/helpers/search.yml @@ -0,0 +1,6 @@ +appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp +--- +- assertVisible: + id: "explorer_search" +- tapOn: + id: "explorer_search" \ No newline at end of file diff --git a/packages/rn-tester/.maestro/image.yml b/packages/rn-tester/.maestro/image.yml index 520b0c68d314..0a62b8b6b678 100644 --- a/packages/rn-tester/.maestro/image.yml +++ b/packages/rn-tester/.maestro/image.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Image" - assertVisible: diff --git a/packages/rn-tester/.maestro/legacy-native-module.yml b/packages/rn-tester/.maestro/legacy-native-module.yml index 424317d579c2..02aa407ae77e 100644 --- a/packages/rn-tester/.maestro/legacy-native-module.yml +++ b/packages/rn-tester/.maestro/legacy-native-module.yml @@ -5,10 +5,7 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo text: "APIs" - tapOn: id: "apis-tab" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/search.yml - inputText: text: "Legacy Native Module" - assertVisible: diff --git a/packages/rn-tester/.maestro/modal.yml b/packages/rn-tester/.maestro/modal.yml index a5a84841b3ed..947f7921bcc3 100644 --- a/packages/rn-tester/.maestro/modal.yml +++ b/packages/rn-tester/.maestro/modal.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Modal" - assertVisible: diff --git a/packages/rn-tester/.maestro/new-arch-examples.yml b/packages/rn-tester/.maestro/new-arch-examples.yml index 1f50b67c0c88..e708cfbe33b7 100644 --- a/packages/rn-tester/.maestro/new-arch-examples.yml +++ b/packages/rn-tester/.maestro/new-arch-examples.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "New Architecture Examples" - assertVisible: diff --git a/packages/rn-tester/.maestro/pressable.yml b/packages/rn-tester/.maestro/pressable.yml index 92795b0895e4..96ccb95f952e 100644 --- a/packages/rn-tester/.maestro/pressable.yml +++ b/packages/rn-tester/.maestro/pressable.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Pressable" - assertVisible: diff --git a/packages/rn-tester/.maestro/text.yml b/packages/rn-tester/.maestro/text.yml index 9bdfa85f9f01..87c8d517d3be 100644 --- a/packages/rn-tester/.maestro/text.yml +++ b/packages/rn-tester/.maestro/text.yml @@ -1,11 +1,6 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- launchApp -- assertVisible: "Components" -- assertVisible: - id: "explorer_search" -- tapOn: - id: "explorer_search" +- runFlow: ./helpers/launch-app-and-search.yml - inputText: text: "Text" - assertVisible: From 81e13171d4b6a1e8f4d9ce1bee3faaa936227d62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateo=20Guzm=C3=A1n?= Date: Sun, 25 May 2025 13:26:50 +0200 Subject: [PATCH 3/4] Add eol --- packages/rn-tester/.maestro/helpers/launch-app-and-search.yml | 2 +- packages/rn-tester/.maestro/helpers/search.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml b/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml index 085ea25a283c..6c67d61a09e3 100644 --- a/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml +++ b/packages/rn-tester/.maestro/helpers/launch-app-and-search.yml @@ -2,4 +2,4 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - launchApp - assertVisible: "Components" -- runFlow: ./search.yml \ No newline at end of file +- runFlow: ./search.yml diff --git a/packages/rn-tester/.maestro/helpers/search.yml b/packages/rn-tester/.maestro/helpers/search.yml index 4a25ef5598c3..74a2c59ac154 100644 --- a/packages/rn-tester/.maestro/helpers/search.yml +++ b/packages/rn-tester/.maestro/helpers/search.yml @@ -3,4 +3,4 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo - assertVisible: id: "explorer_search" - tapOn: - id: "explorer_search" \ No newline at end of file + id: "explorer_search" From 4334c5048a94a4ab0138121055cda62d9b9ec9a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateo=20Guzm=C3=A1n?= Date: Sun, 25 May 2025 14:33:06 +0200 Subject: [PATCH 4/4] Put back faster tests with scrolling --- packages/rn-tester/.maestro/button.yml | 12 +++++++----- packages/rn-tester/.maestro/flatlist.yml | 12 +++++++----- packages/rn-tester/.maestro/image.yml | 12 +++++++----- packages/rn-tester/.maestro/legacy-native-module.yml | 2 +- packages/rn-tester/.maestro/modal.yml | 12 +++++++----- packages/rn-tester/.maestro/new-arch-examples.yml | 2 +- packages/rn-tester/.maestro/text.yml | 3 ++- 7 files changed, 32 insertions(+), 23 deletions(-) diff --git a/packages/rn-tester/.maestro/button.yml b/packages/rn-tester/.maestro/button.yml index b92fa67d697a..a3df9a24dcef 100644 --- a/packages/rn-tester/.maestro/button.yml +++ b/packages/rn-tester/.maestro/button.yml @@ -1,10 +1,12 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- runFlow: ./helpers/launch-app-and-search.yml -- inputText: - text: "Button" -- assertVisible: - id: "Button" +- launchApp +- assertVisible: "Components" +- scrollUntilVisible: + element: + id: "Button" + direction: DOWN + speed: 40 - tapOn: id: "Button" - tapOn: diff --git a/packages/rn-tester/.maestro/flatlist.yml b/packages/rn-tester/.maestro/flatlist.yml index cdcdb7ce5bab..17587f86a145 100644 --- a/packages/rn-tester/.maestro/flatlist.yml +++ b/packages/rn-tester/.maestro/flatlist.yml @@ -1,10 +1,12 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- runFlow: ./helpers/launch-app-and-search.yml -- inputText: - text: "Flatlist" -- assertVisible: - id: "Flatlist" +- launchApp +- assertVisible: "Components" +- scrollUntilVisible: + element: + id: "Flatlist" + direction: DOWN + speed: 40 - tapOn: id: "Flatlist" - tapOn: diff --git a/packages/rn-tester/.maestro/image.yml b/packages/rn-tester/.maestro/image.yml index 0a62b8b6b678..f963352f4b51 100644 --- a/packages/rn-tester/.maestro/image.yml +++ b/packages/rn-tester/.maestro/image.yml @@ -1,10 +1,12 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- runFlow: ./helpers/launch-app-and-search.yml -- inputText: - text: "Image" -- assertVisible: - id: "Image" +- launchApp +- assertVisible: "Components" +- scrollUntilVisible: + element: + id: "Image" + direction: DOWN + speed: 40 - tapOn: id: "Image" - assertVisible: "Plain Network Image with `source` prop." diff --git a/packages/rn-tester/.maestro/legacy-native-module.yml b/packages/rn-tester/.maestro/legacy-native-module.yml index 02aa407ae77e..ad67cd91ddfa 100644 --- a/packages/rn-tester/.maestro/legacy-native-module.yml +++ b/packages/rn-tester/.maestro/legacy-native-module.yml @@ -7,7 +7,7 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo id: "apis-tab" - runFlow: ./helpers/search.yml - inputText: - text: "Legacy Native Module" + text: "Legacy Native" - assertVisible: id: "Legacy Native Module" - tapOn: diff --git a/packages/rn-tester/.maestro/modal.yml b/packages/rn-tester/.maestro/modal.yml index 947f7921bcc3..5fb489496b57 100644 --- a/packages/rn-tester/.maestro/modal.yml +++ b/packages/rn-tester/.maestro/modal.yml @@ -1,10 +1,12 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebook.react.uiapp --- -- runFlow: ./helpers/launch-app-and-search.yml -- inputText: - text: "Modal" -- assertVisible: - id: "Modal" +- launchApp +- assertVisible: "Components" +- scrollUntilVisible: + element: + id: "Modal" + direction: DOWN + speed: 60 - tapOn: id: "Modal" - assertVisible: diff --git a/packages/rn-tester/.maestro/new-arch-examples.yml b/packages/rn-tester/.maestro/new-arch-examples.yml index e708cfbe33b7..0672e10f8746 100644 --- a/packages/rn-tester/.maestro/new-arch-examples.yml +++ b/packages/rn-tester/.maestro/new-arch-examples.yml @@ -2,7 +2,7 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo --- - runFlow: ./helpers/launch-app-and-search.yml - inputText: - text: "New Architecture Examples" + text: "New Architecture" - assertVisible: id: "New Architecture Examples" - tapOn: diff --git a/packages/rn-tester/.maestro/text.yml b/packages/rn-tester/.maestro/text.yml index 87c8d517d3be..07c247f76e86 100644 --- a/packages/rn-tester/.maestro/text.yml +++ b/packages/rn-tester/.maestro/text.yml @@ -12,7 +12,8 @@ appId: ${APP_ID} # iOS: com.meta.RNTester.localDevelopment | Android: com.facebo - tapOn: id: "example_search" - inputText: - text: "Background Color and Border Width" + text: "Background Color" +- hideKeyboard - assertVisible: "Text with background color only" - assertVisible: "Text with background color and uniform borderRadii" - assertVisible: "Text with background color and non-uniform borders"