testing/fake_onboarding
library
Classes
-
FakeOnboardingStore
-
An in-memory OnboardingStore. Backs the backup-confirmed flag; can be made
to throw on persist to exercise the gate-stays-closed path. Seedable so a
"previous launch" state (a confirmed or unconfirmed prior wallet) is set up.
-
FakeScreenSecurity
-
A host-VM fake ScreenSecurity — counts the backup screen's protection
requests so a widget test can assert it engages on show and releases on
dispose. isScreenshotBlockSupported is configurable so a test can drive
both the Android (block) and the elsewhere (advise-a-private-setting) copy.
-
FakeWalletProvisioner
-
A host-VM fake WalletProvisioner — no native library, no device. Drives
the OnboardingController state machine deterministically: configure what
is on disk, make any step succeed or throw a TYPED failure, and count calls.
-
TestLifecycleNotifier
-
A controllable appLifecycleProvider override for DETERMINISTIC lifecycle
tests. Overriding the provider bypasses the platform binding entirely — no
handleAppLifecycleStateChanged transition-legality, no AppLifecycleListener
coalescing across pump boundaries (both of which make binding-driven hides
flaky and unable to distinguish "this state is not a trigger" from "the event
never fired"). emit drives the state directly so a ref.listen fires for
exactly the state asked for. Subclasses the real AppLifecycleNotifier (so
it matches the provider's overrideWith type) but overrides build to NOT
register the platform AppLifecycleListener — the binding plays no part.
Properties
-
testBip39Wordlist
→ Bip39Wordlist
-
A tiny BIP39 wordlist fixture for the restore widget tests — just the words
the tests use (sorted, lowercase, like the real bundled asset). The restore
field's live validity/autocomplete reads this; the SDK is still the real gate.
Restore harnesses override
bip39WordlistProvider with this so validity is
deterministic (every test word reads valid → the count-only gate applies).
final