1821b9ff71
Add comprehensive test coverage for NIP-46 bunker login across quartz and desktopApp: Quartz (4 files, 48 tests): - ResponseParserTest: all 7 response parsers (success/error/unexpected) - FromBunkerUriTest: URI parsing, validation, edge cases - ConvertExceptionsTest: SignerResult→Exception mapping - NostrConnectEventTest: canDecrypt, talkingWith, verifiedRecipientPubKey Desktop (6 files, 45 tests): - BunkerUriUtilsTest: validateBunkerUri + stripBunkerSecret - AccountManagerKeyLoginTest: nsec/npub/invalid login, save, generate - AccountManagerLogoutTest: logout, forceLogout, state transitions - AccountManagerLoadAccountTest: internal/bunker/missing-key scenarios - AccountManagerBunkerLoginTest: hasBunkerAccount, setConnectingRelays - AccountManagerHeartbeatTest: start/stop, no-crash with internal signer Production changes: - AccountManager: constructor private→internal, add homeDir param for test injection, extract stripBunkerSecret to internal top-level, constants internal - desktopApp/build.gradle.kts: add mockk test dependency Fix pre-existing chess test compilation errors: - ChessStateReconstructorTest: add missing jester subpackage imports - ChessGameEventTest: altText()→alt() + add nip31Alts import Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>