test: regression coverage for 7.15.0 firmware fixes by BitHighlander · Pull Request #20 · BitHighlander/python-keepkey
EIP-1559 (fix/eip1559): - test_eip1559_base_chain_id: Base mainnet chain_id=8453 (overflows uint8_t) - test_eip1559_arbitrum_chain_id: Arbitrum One chain_id=42161 - test_eip1559_avalanche_chain_id: Avalanche C-Chain chain_id=43114 Token chain-id (fix/token-chain-id): - test_erc20_transfer_arbitrum: ERC-20 transfer on Arbitrum (chain_id=42161) - test_erc20_transfer_base: ERC-20 transfer on Base (chain_id=8453) EIP-712 security (fix/eip712-security): - TestEIP712Security.test_eip712_normal_hash_signing_still_works - TestEIP712Security.test_eip712_hash_signing_no_message_hash Ripple memo (feat/ripple-memo): - test_ripple_sign_no_memo_backward_compat: omitting memo must not change serialized bytes THORChain any-denom (feat/thorchain-any-denom): - test_thorchain_rune_denom_backward_compat: rune path unchanged after firmware fix - test_thorchain_msgsend_direct_with_denom: direct proto call with denom (skips if pb2 not updated) Solana token decimals (fix/solana-token-decimals): - test_solana_token_transfer_checked_decimals_6: TokenTransferChecked with decimals=6 - test_solana_token_transfer_checked_decimals_9: TokenTransferChecked with decimals=9 TRON blind-sign (fix/tron-blind-sign): - test_tron_blind_sign_still_completes_after_ux_fix TON blind-sign (fix/ton-blind-sign): - test_ton_blind_sign_still_completes_after_ux_fix
Test bugs fixed: - ETH THORChain deposit: assertIn(sig_v, [27,28]) → [37,38] (EIP-155, chain_id=1) - TON blind-sign: remove message arg from assertEqual (custom assertEqual takes 2 args) - TRON blind-sign: same assertEqual fix - EIP-712 hash signing: fix odd-length hex (63→64 chars, prepend '0') - XRP no-memo check: b'\xf9' → b'\xf9\xea' (0xF9 appears naturally in DER sigs) Skip unimplemented alpha features: - Zcash PCZT Orchard action signing (4 tests): skipTest until feature lands in alpha - Zcash ZcashDisplayAddress FVK validation (1 test): skipTest until feature lands