aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.appveyor.yml2
-rw-r--r--Makefile.am2
-rwxr-xr-xci/lint/04_install.sh1
-rw-r--r--configure.ac2
-rw-r--r--doc/fuzzing.md3
-rw-r--r--src/Makefile.test.include4
-rw-r--r--test/README.md13
-rw-r--r--test/config.ini.in2
-rwxr-xr-xtest/util/test_runner.py (renamed from test/util/bitcoin-util-test.py)0
9 files changed, 17 insertions, 12 deletions
diff --git a/.appveyor.yml b/.appveyor.yml
index 3ca7818eca..a85ec4c380 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -51,7 +51,7 @@ after_build:
test_script:
- cmd: src\test_bitcoin.exe -l test_suite
- cmd: src\bench_bitcoin.exe > NUL
-- ps: python test\util\bitcoin-util-test.py
+- ps: python test\util\test_runner.py
- cmd: python test\util\rpcauth-test.py
# Fee estimation test failing on appveyor with: WinError 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted.
# functional tests disabled for now. See
diff --git a/Makefile.am b/Makefile.am
index 79c294fd15..ce66331910 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -286,7 +286,7 @@ EXTRA_DIST += \
test/fuzz
EXTRA_DIST += \
- test/util/bitcoin-util-test.py \
+ test/util/test_runner.py \
test/util/data/bitcoin-util-test.json \
test/util/data/blanktxv1.hex \
test/util/data/blanktxv1.json \
diff --git a/ci/lint/04_install.sh b/ci/lint/04_install.sh
index 2c63a9efac..5587618f2d 100755
--- a/ci/lint/04_install.sh
+++ b/ci/lint/04_install.sh
@@ -13,7 +13,6 @@ update-alternatives --install /usr/bin/clang-format-diff clang-format-diff $(whi
${CI_RETRY_EXE} pip3 install codespell==2.0.0
${CI_RETRY_EXE} pip3 install flake8==3.8.3
-${CI_RETRY_EXE} pip3 install yq
${CI_RETRY_EXE} pip3 install mypy==0.781
${CI_RETRY_EXE} pip3 install vulture==2.3
diff --git a/configure.ac b/configure.ac
index 6c867986c9..f03025d3c1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1874,7 +1874,7 @@ AC_CONFIG_LINKS([contrib/devtools/test-symbol-check.py:contrib/devtools/test-sym
AC_CONFIG_LINKS([contrib/filter-lcov.py:contrib/filter-lcov.py])
AC_CONFIG_LINKS([test/functional/test_runner.py:test/functional/test_runner.py])
AC_CONFIG_LINKS([test/fuzz/test_runner.py:test/fuzz/test_runner.py])
-AC_CONFIG_LINKS([test/util/bitcoin-util-test.py:test/util/bitcoin-util-test.py])
+AC_CONFIG_LINKS([test/util/test_runner.py:test/util/test_runner.py])
AC_CONFIG_LINKS([test/util/rpcauth-test.py:test/util/rpcauth-test.py])
dnl boost's m4 checks do something really nasty: they export these vars. As a
diff --git a/doc/fuzzing.md b/doc/fuzzing.md
index 6605749557..ee9c65d4d4 100644
--- a/doc/fuzzing.md
+++ b/doc/fuzzing.md
@@ -16,6 +16,9 @@ $ FUZZ=process_message src/test/fuzz/fuzz
# abort fuzzing using ctrl-c
```
+There is also a runner script to execute all fuzz targets. Refer to
+`./test/fuzz/test_runner.py --help` for more details.
+
## Fuzzing harnesses and output
[`process_message`](https://github.com/bitcoin/bitcoin/blob/master/src/test/fuzz/process_message.cpp) is a fuzzing harness for the [`ProcessMessage(...)` function (`net_processing`)](https://github.com/bitcoin/bitcoin/blob/master/src/net_processing.cpp). The available fuzzing harnesses are found in [`src/test/fuzz/`](https://github.com/bitcoin/bitcoin/tree/master/src/test/fuzz).
diff --git a/src/Makefile.test.include b/src/Makefile.test.include
index 6af5ead443..a85a359960 100644
--- a/src/Makefile.test.include
+++ b/src/Makefile.test.include
@@ -337,8 +337,8 @@ bitcoin_test_clean : FORCE
check-local: $(BITCOIN_TESTS:.cpp=.cpp.test)
if BUILD_BITCOIN_TX
- @echo "Running test/util/bitcoin-util-test.py..."
- $(PYTHON) $(top_builddir)/test/util/bitcoin-util-test.py
+ @echo "Running test/util/test_runner.py..."
+ $(PYTHON) $(top_builddir)/test/util/test_runner.py
endif
@echo "Running test/util/rpcauth-test.py..."
$(PYTHON) $(top_builddir)/test/util/rpcauth-test.py
diff --git a/test/README.md b/test/README.md
index 51e61562a4..412d5ae106 100644
--- a/test/README.md
+++ b/test/README.md
@@ -5,20 +5,24 @@ etc.
This directory contains the following sets of tests:
+- [fuzz](/test/fuzz) A runner to execute all fuzz targets from
+ [/src/test/fuzz](/src/test/fuzz).
- [functional](/test/functional) which test the functionality of
bitcoind and bitcoin-qt by interacting with them through the RPC and P2P
interfaces.
-- [util](/test/util) which tests the bitcoin utilities, currently only
-bitcoin-tx.
+- [util](/test/util) which tests the utilities (bitcoin-util, bitcoin-tx, ...).
- [lint](/test/lint/) which perform various static analysis checks.
-The util tests are run as part of `make check` target. The functional
+The util tests are run as part of `make check` target. The fuzz tests, functional
tests and lint scripts can be run as explained in the sections below.
# Running tests locally
Before tests can be run locally, Bitcoin Core must be built. See the [building instructions](/doc#building) for help.
+## Fuzz tests
+
+See [/doc/fuzzing.md](/doc/fuzzing.md)
### Functional tests
@@ -257,7 +261,7 @@ For ways to generate more granular profiles, see the README in
### Util tests
-Util tests can be run locally by running `test/util/bitcoin-util-test.py`.
+Util tests can be run locally by running `test/util/test_runner.py`.
Use the `-v` option for verbose output.
### Lint tests
@@ -269,7 +273,6 @@ Use the `-v` option for verbose output.
| [`lint-python.sh`](lint/lint-python.sh) | [flake8](https://gitlab.com/pycqa/flake8) | [3.8.3](https://github.com/bitcoin/bitcoin/pull/19348) | `pip3 install flake8==3.8.3`
| [`lint-python.sh`](lint/lint-python.sh) | [mypy](https://github.com/python/mypy) | [0.781](https://github.com/bitcoin/bitcoin/pull/19348) | `pip3 install mypy==0.781`
| [`lint-shell.sh`](lint/lint-shell.sh) | [ShellCheck](https://github.com/koalaman/shellcheck) | [0.7.2](https://github.com/bitcoin/bitcoin/pull/21749) | [details...](https://github.com/koalaman/shellcheck#installing)
-| [`lint-shell.sh`](lint/lint-shell.sh) | [yq](https://github.com/kislyuk/yq) | default | `pip3 install yq`
| [`lint-spelling.sh`](lint/lint-spelling.sh) | [codespell](https://github.com/codespell-project/codespell) | [2.0.0](https://github.com/bitcoin/bitcoin/pull/20817) | `pip3 install codespell==2.0.0`
Please be aware that on Linux distributions all dependencies are usually available as packages, but could be outdated.
diff --git a/test/config.ini.in b/test/config.ini.in
index e3872181cd..db80bba6f1 100644
--- a/test/config.ini.in
+++ b/test/config.ini.in
@@ -3,7 +3,7 @@
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
# These environment variables are set by the build process and read by
-# test/functional/test_runner.py and test/util/bitcoin-util-test.py
+# test/*/test_runner.py and test/util/rpcauth-test.py
[environment]
PACKAGE_NAME=@PACKAGE_NAME@
diff --git a/test/util/bitcoin-util-test.py b/test/util/test_runner.py
index aa8fd6eee5..aa8fd6eee5 100755
--- a/test/util/bitcoin-util-test.py
+++ b/test/util/test_runner.py