Native Test Utilities
SkillDev toolsUse when writing component or hook tests in suite-native and need to choose between renderWithBasicProvider, renderWithStoreProvider, or store helpers like createStoreFromPreloadedState, createLightStore, or mergePreloadedState.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Native Test Utilities skill
What this skill tells your AI
The instructions your AI receives, as published by trezor/trezor-suite in skills/tests-native/SKILL.md and read by ahel’s review.
Two packages provide testing utilities for suite-native. Pick the one that fits your test:
| Need | Package |
|---|---|
| Component or hook test with no Redux store | @suite-native/test-utils |
| Component or hook test that reads from or dispatches to a Redux store | @suite-native/test-utils-store |
Never import directly from @testing-library/react-native — both packages re-export it.
@suite-native/test-utils
Provides renderWithBasicProvider and renderHookWithBasicProvider, which wrap the component with theme, safe-area,
intl, and formatters providers. Also exports BasicProviderForTests and all of
@testing-library/react-native.
BasicProviderForTests is the underlying wrapper component used by both render helpers. Use it directly only when you
need to pass it as a wrapper option to a custom render or hook call — for example, when composing your own render
helper or when the testing-library API requires a wrapper component rather than a pre-rendered tree.
@suite-native/test-utils-store
Extends @suite-native/test-utils with Redux support. Provides renderWithStoreProvider and
renderHookWithStoreProvider — both accept the same options: preloadedState?: Record<string, unknown> or a
pre-built store passed as services: { store }. Plus store factory helpers:
createStoreFromPreloadedState(preloadedState?)— static (no-op) reducers; use when the test only reads state.createLightStore({ reducer, preloadedState })— real reducers; use when the test dispatches actions that must mutate state.createStaticReducer(initialState)— creates a no-op reducer for slices the test does not interact with.mergePreloadedState(base, overrides)— deep-merges a partialoverridesinto a complete typedbasestate object and returns it typed asbase. Use this to build thepreloadedStatearg: start from a fully-constructed state (e.g. the result ofstore.getState()on a default store) and override only the slices the test cares about.
Signals
- GitHub stars
- 1k
- Forks
- 375
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
tests-native- Source
- github.com/trezor/trezor-suite