Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when writing component or hook tests in suite-native and need to choose between renderWithBasicProvider, renderWithStoreProvider, or store helpers like createStoreFromPreloadedState, createLightStore, or mergePreloadedState.
.claude/skills/trezor-tests-native/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -19% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -19% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -16% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -44% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -54% | 0% |
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-utilsProvides renderWithBasicProvider and renderHookWithBasicProvider, which wrap the component with theme, safe-area, intl, and formatters providers. Also exports BasicProviderForTests, extraDependenciesNativeMock, 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-storeExtends @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?: TestStore. 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 mutatestate.
createStaticReducer(initialState) — creates a no-op reducer for slices the test does not interact with.mergePreloadedState(base, overrides) — deep-merges a partial overrides into a complete typed base state objectand returns it typed as base. Use this to build the preloadedState arg: start from a fully-constructed state (e.g. the result of store.getState() on a default store) and override only the slices the test cares about.
Other measured skills in the registry, with their headline benchmark lift.