URI: 
       ttests: introduce FAST_TESTS flag for faster local testing - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit dbec3af810851666ba16e3c9b9e966974fcb0aa5
   DIR parent 1f373c1eb9c119605aac24f8cdeb7230925b1468
  HTML Author: SomberNight <somber.night@protonmail.com>
       Date:   Mon, 28 May 2018 14:02:07 +0200
       
       ttests: introduce FAST_TESTS flag for faster local testing
       
       Diffstat:
         M lib/tests/__init__.py               |       7 +++++++
         M lib/tests/test_bitcoin.py           |       8 +++++++-
       
       2 files changed, 14 insertions(+), 1 deletion(-)
       ---
   DIR diff --git a/lib/tests/__init__.py b/lib/tests/__init__.py
       t@@ -4,6 +4,13 @@ import threading
        from lib import constants
        
        
       +# Set this locally to make the test suite run faster.
       +# If set, unit tests that would normally test functions with multiple implementations,
       +# will only be run once, using the fastest implementation.
       +# e.g. libsecp256k1 vs python-ecdsa. pycryptodomex vs pyaes.
       +FAST_TESTS = False
       +
       +
        # some unit tests are modifying globals; sorry.
        class SequentialTestCase(unittest.TestCase):
        
   DIR diff --git a/lib/tests/test_bitcoin.py b/lib/tests/test_bitcoin.py
       t@@ -21,8 +21,8 @@ from lib import constants
        from lib.storage import WalletStorage
        
        from . import SequentialTestCase
       -
        from . import TestCaseForTestnet
       +from . import FAST_TESTS
        
        
        try:
       t@@ -39,6 +39,9 @@ def needs_test_with_all_ecc_implementations(func):
            tests running in parallel would break things
            """
            def run_test(*args, **kwargs):
       +        if FAST_TESTS:  # if set, only run tests once, using fastest implementation
       +            func(*args, **kwargs)
       +            return
                ecc_fast.undo_monkey_patching_of_python_ecdsa_internals_with_libsecp256k1()
                try:
                    # first test without libsecp
       t@@ -61,6 +64,9 @@ def needs_test_with_all_aes_implementations(func):
            tests running in parallel would break things
            """
            def run_test(*args, **kwargs):
       +        if FAST_TESTS:  # if set, only run tests once, using fastest implementation
       +            func(*args, **kwargs)
       +            return
                _aes = crypto.AES
                crypto.AES = None
                try: