|
|
@ -165,20 +165,20 @@ class TestWalletKeystoreAddressIntegrity(unittest.TestCase): |
|
|
|
self.assertEqual(w.get_change_addresses()[0], 'bc1q89s4j4k3ghdmscjz0pklz2fl24mc9ptvwyg38xgqyw8f5vk29ccskzcf2y') |
|
|
|
|
|
|
|
@mock.patch.object(storage.WalletStorage, '_write') |
|
|
|
def test_bip39_multisig_seed_bip44_standard(self, mock_write): |
|
|
|
def test_bip39_multisig_seed_bip45_standard(self, mock_write): |
|
|
|
seed_words = 'treat dwarf wealth gasp brass outside high rent blood crowd make initial' |
|
|
|
self.assertEqual(keystore.bip39_is_checksum_valid(seed_words), (True, True)) |
|
|
|
|
|
|
|
ks1 = keystore.from_bip39_seed(seed_words, '', "m/44'/0'/0'") |
|
|
|
ks1 = keystore.from_bip39_seed(seed_words, '', "m/45'/0") |
|
|
|
self.assertTrue(isinstance(ks1, keystore.BIP32_KeyStore)) |
|
|
|
self.assertEqual(ks1.xpub, 'xpub6DFh1smUsyqmYD4obDX6ngaxhd53Zx7aeFjoobebm7vbkT6f9awJWFuGzBT9FQJEWFBL7UyhMXtYzRcwDuVbcxtv9Ce2W9eMm4KXLdvdbjv') |
|
|
|
self.assertEqual(ks1.xpub, 'xpub69xafV4YxC6o8Yiga5EiGLAtqR7rgNgNUGiYgw3S9g9pp6XYUne1KxdcfYtxwmA3eBrzMFuYcNQKfqsXCygCo4GxQFHfywxpUbKNfYvGJka') |
|
|
|
|
|
|
|
ks2 = keystore.from_xpub('xpub6D9mmC1euHjT6dVrsfwSeNRPF2oi3cTifXwgnhzAay7RiCmZTtzAPCGPcyYP9NwTn5QvoyYsx7DxSQYc82872dk3pWv1P5om1EC1jAr5jGT') |
|
|
|
ks2 = keystore.from_xpub('xpub6Bco9vrgo8rNUSi8Bjomn8xLA41DwPXeuPcgJamNRhTTyGVHsp8fZXaGzp9ypHoei16J6X3pumMAP1u3Dy4jTSWjm4GZowL7Dcn9u4uZC9W') |
|
|
|
self._check_xpub_keystore_sanity(ks2) |
|
|
|
self.assertTrue(isinstance(ks2, keystore.BIP32_KeyStore)) |
|
|
|
|
|
|
|
w = self._create_multisig_wallet(ks1, ks2) |
|
|
|
|
|
|
|
self.assertEqual(w.get_receiving_addresses()[0], '35hp2ELdVzs3xF7cFhsuifV9HnyHpNAwbf') |
|
|
|
self.assertEqual(w.get_change_addresses()[0], '39LMwwqYwx8XUNCs83FQ82nNBCpu3JDrcW') |
|
|
|
self.assertEqual(w.get_receiving_addresses()[0], '3H3iyACDTLJGD2RMjwKZcCwpdYZLwEZzKb') |
|
|
|
self.assertEqual(w.get_change_addresses()[0], '31hyfHrkhNjiPZp1t7oky5CGNYqSqDAVM9') |
|
|
|
|
|
|
|