Skip to content

test(e2e): use neutral iOS slot simulators - #9334

Open
mikehardy wants to merge 1 commit into
mainfrom
e2e-neutral-slots
Open

mikehardy wants to merge 1 commit into
mainfrom
e2e-neutral-slots

Conversation

@mikehardy

@mikehardy mikehardy commented Sep 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Use neutral iOS slot simulator names (RN E2E iOS slot-N) shared by React Native e2e harnesses, with slots 0–7 available.
  • Patch Detox allocation for neutral slots to reuse the exact assigned base simulator or fail with actionable ownership guidance when that base is already registry-taken. Detox never escapes to a -Detox clone for these slots; Mellifera/manual slot assignment owns exclusivity.
  • Keep setup create/reuse-only, check/release exact-name scoped, Android slot support intact, and legacy RNFB E2E iOS slot-N removal an explicit operator migration.
  • Keep the configured slot count and slot bounds consistent across environment export, device provisioning, resource checks, and release.

Test plan

  • Root install applies the rewritten detox@20.51.0 patch; focused slot/device contract tests pass 68/68; JS lint passes.
  • Live area-focused iOS proof on slot 7 passes 42 tests using the pre-existing exact base UDID, with no simulator create operation and no -Detox device produced.
  • Scoped release leaves slot 7 and owned services clear; slot 3 is untouched.
  • Fresh independent frozen review and OKF consistency scan pass with no findings.

@mikehardy mikehardy added the Workflow: Needs Review Pending feedback or review from a maintainer. label Sep 22, 2026
@codecov

codecov Bot commented Sep 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 69.84%. Comparing base (fa3f29d) to head (9d3c5ff).

Additional details and impacted files
@@             Coverage Diff              @@
##               main    #9334      +/-   ##
============================================
+ Coverage     69.81%   69.84%   +0.03%     
- Complexity     2129     2133       +4     
============================================
  Files           439      439              
  Lines         25518    25519       +1     
  Branches       4257     4257              
============================================
+ Hits          17814    17822       +8     
+ Misses         6360     6356       -4     
+ Partials       1344     1341       -3     
Flag Coverage Δ
android-native 65.98% <ø> (+0.07%) ⬆️
e2e-ts-android 54.42% <ø> (ø)
e2e-ts-ios 53.89% <ø> (ø)
e2e-ts-macos 49.95% <ø> (ø)
ios-ruby 100.00% <ø> (ø)
jest 48.84% <100.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@mikehardy
mikehardy marked this pull request as draft September 22, 2026 16:28
@mikehardy

Copy link
Copy Markdown
Collaborator Author

revisiting the -Detox sim/emu device clone naming thing - unhappy with "force Detox clone device" direction and rather want to invert "only ever use base device" so detox fails if base device is taken vs silently consuming disk with clone-on-demand device creation

@mikehardy mikehardy left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

better - this is the one that works best for me in a multi-slotted local e2e env

@mikehardy
mikehardy marked this pull request as ready for review September 22, 2026 21:08

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Workflow: Needs Review Pending feedback or review from a maintainer.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant