Browse Source
tests: introduce FAST_TESTS flag for faster local testing
3.2.x
SomberNight
7 years ago
No known key found for this signature in database
GPG Key ID: B33B5F232C6271E9
2 changed files with
14 additions and
1 deletions
-
lib/tests/__init__.py
-
lib/tests/test_bitcoin.py
|
|
@ -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): |
|
|
|
|
|
|
|
|
|
@ -21,8 +21,8 @@ from lib import constants |
|
|
|
from lib.storage import WalletStorage |
|
|
|
|
|
|
|
from . import SequentialTestCase |
|
|
|
|
|
|
|
from . import TestCaseForTestnet |
|
|
|
from . import FAST_TESTS |
|
|
|
|
|
|
|
|
|
|
|
try: |
|
|
@ -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 |
|
|
@ -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: |
|
|
|