URI: 
       ttest_storage_upgrade.py - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
       ttest_storage_upgrade.py (395545B)
       ---
            1 import shutil
            2 import tempfile
            3 import os
            4 import json
            5 from typing import Optional
            6 import asyncio
            7 
            8 import electrum
            9 from electrum.wallet_db import WalletDB
           10 from electrum.wallet import Wallet
           11 from electrum import constants
           12 from electrum import util
           13 
           14 from .test_wallet import WalletTestCase
           15 
           16 
           17 # TODO add other wallet types: 2fa, xpub-only
           18 # TODO hw wallet with client version 2.6.x (single-, and multiacc)
           19 class TestStorageUpgrade(WalletTestCase):
           20 
           21     def setUp(self):
           22         super().setUp()
           23         self.asyncio_loop, self._stop_loop, self._loop_thread = util.create_and_start_event_loop()
           24 
           25     def tearDown(self):
           26         super().tearDown()
           27         self.asyncio_loop.call_soon_threadsafe(self._stop_loop.set_result, 1)
           28         self._loop_thread.join(timeout=1)
           29 
           30     def testnet_wallet(func):
           31         # note: it's ok to modify global network constants in subclasses of SequentialTestCase
           32         def wrapper(self, *args, **kwargs):
           33             constants.set_testnet()
           34             try:
           35                 return func(self, *args, **kwargs)
           36             finally:
           37                 constants.set_mainnet()
           38         return wrapper
           39 
           40 ##########
           41 
           42     def test_upgrade_from_client_1_9_8_seeded(self):
           43         wallet_str = "{'addr_history':{'177hEYTccmuYH8u68pYfaLteTxwJrVgvJj':[],'15V7MsQK2vjF5aEXLVG11qi2eZPZsXdnYc':[],'1DgrwN2JCDZ6uPMSvSz8dPeUtaxLxWM2kf':[],'1H3mPXHFzA8UbvhQVabcDjYw3CPb3djvxs':[],'1DjtUCcQwwzA3GSPA7Kd79PMnri7tLDPYC':[],'1PGEgaPG1XJqmuSj68GouotWeYkCtwo4wm':[],'1PAgpPxnL42Hp3cWxmSfdChPqqGiM8g7zj':[],'1HocPduHmQUJerpdaLG8DnmxvnDCVQwWsa':[]},'accounts_expanded':{},'master_public_key':'756d1fe6ded28d43d4fea902a9695feb785447514d6e6c3bdf369f7c3432fdde4409e4efbffbcf10084d57c5a98d1f34d20ac1f133bdb64fa02abf4f7bde1dfb','use_encryption':False,'seed':'2605aafe50a45bdf2eb155302437e678','accounts':{0:{0:['1DjtUCcQwwzA3GSPA7Kd79PMnri7tLDPYC','1PAgpPxnL42Hp3cWxmSfdChPqqGiM8g7zj','177hEYTccmuYH8u68pYfaLteTxwJrVgvJj','1PGEgaPG1XJqmuSj68GouotWeYkCtwo4wm','15V7MsQK2vjF5aEXLVG11qi2eZPZsXdnYc'],1:['1H3mPXHFzA8UbvhQVabcDjYw3CPb3djvxs','1HocPduHmQUJerpdaLG8DnmxvnDCVQwWsa','1DgrwN2JCDZ6uPMSvSz8dPeUtaxLxWM2kf']}},'seed_version':4}"
           44         self._upgrade_storage(wallet_str)
           45 
           46     # TODO pre-2.0 mixed wallets are not split currently
           47     #def test_upgrade_from_client_1_9_8_mixed(self):
parazyd.org:70 /git/electrum/file/electrum/tests/test_storage_upgrade.py.gph:57: line too long