Skip to content

[NT-1691] Add reference React Native implementation and Detox e2e testing#42

Merged
Alex Freas (akfreas) merged 7 commits into
mainfrom
NT-1691-add-reference-impl-app-and-detox
Oct 20, 2025
Merged

[NT-1691] Add reference React Native implementation and Detox e2e testing#42
Alex Freas (akfreas) merged 7 commits into
mainfrom
NT-1691-add-reference-impl-app-and-detox

Conversation

@akfreas
Copy link
Copy Markdown
Collaborator

@akfreas Alex Freas (akfreas) commented Oct 16, 2025

NT-1691 Add reference React Native implementation and Detox e2e testing

This adds:

  • A basic React Native app that imports the React Native Optimization SDK
  • Basic view that displays the SDK's status
  • E2E testing boilerplate using Detox

We were unable to use Appium because React Native's autolinking system generates code referencing classes that don't exist in RN. This has not been fixed in 0.8x even with the new architecture. Detox uses the React Native CLI, which is a cleaner solution and doesn't rely on a built APK.

@wiz-inc-38d59fb8d7
Copy link
Copy Markdown

wiz-inc-38d59fb8d7 Bot commented Oct 16, 2025

Wiz Scan Summary

Scanner Findings
Vulnerability Finding Vulnerabilities -
Data Finding Sensitive Data -
Total -

View scan details in Wiz

To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension.

@phobetron
Copy link
Copy Markdown
Collaborator

This PR also includes changes from the previous PR. Please fix the conflict in the previous PR so we can merge that branch to main, then rebase this PR's branch on main to simplify the change set.

@akfreas Alex Freas (akfreas) force-pushed the NT-1691-add-reference-impl-app-and-detox branch 2 times, most recently from ec1b37e to 4321687 Compare October 20, 2025 11:13
@akfreas Alex Freas (akfreas) force-pushed the NT-1691-add-reference-impl-app-and-detox branch from 9cd54fe to ee75771 Compare October 20, 2025 11:43
Comment thread pnpm-workspace.yaml

engineStrict: true

nodeVersion: 16.20.0
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Instead of removing this, let's update it to the earliest still-supported LTS, which I believe is a v19 version.

Copy link
Copy Markdown
Collaborator Author

@akfreas Alex Freas (akfreas) Oct 20, 2025

Choose a reason for hiding this comment

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

I think we can move it to v20, as that's the earliest one in maintenance. (20.19.5)

if (error instanceof Error)
logger.error(`Failed to remove ${key} from AsyncStorage:`, error)
// eslint-disable-next-line no-console -- Logging storage errors for debugging
console.error(`Failed to remove ${key} from AsyncStorage:`, error)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

You can also use the logger for debugging. You'll need to make sure your console itself is set to the level debug. Let's make sure we don't check in any console method calls in code that ships with the SDKs.

Comment on lines +52 to +53
"engines": {
"node": ">=18"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Could we omit this if we update the pnpm-workspace.yaml file?

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.

Yes, I think we can remove it once those changes are there

@akfreas Alex Freas (akfreas) merged commit 7935afb into main Oct 20, 2025
16 checks passed
@akfreas Alex Freas (akfreas) deleted the NT-1691-add-reference-impl-app-and-detox branch October 20, 2025 13:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants