Merge #9065: Merge doc/unit-tests.md into src/test/README.md

eedc461 Merge `doc/unit-tests.md` into `src/test/README.md` (Wladimir J. van der Laan)
This commit is contained in:
MarcoFalke 2016-11-02 23:35:52 +01:00 committed by Alexander Block
parent 9b9f86a59b
commit 70c86db4ef
4 changed files with 37 additions and 34 deletions

View File

@ -44,9 +44,10 @@ lots of money.
### Automated Testing
Developers are strongly encouraged to write [unit tests](/doc/unit-tests.md) for new code, and to
Developers are strongly encouraged to write [unit tests](src/test/README.md) for new code, and to
submit new unit tests for old code. Unit tests can be compiled and run
(assuming they weren't disabled in configure) with: `make check`
(assuming they weren't disabled in configure) with: `make check`. Further details on running
and extending unit tests can be found in [/src/test/README.md](/src/test/README.md).
There are also [regression and integration tests](/qa) of the RPC interface, written
in Python, that are run automatically on the build server.

View File

@ -49,7 +49,6 @@ The Dash Core repo's [root README](/README.md) contains relevant information on
- Source Code Documentation ***TODO***
- [Translation Process](translation_process.md)
- [Translation Strings Policy](translation_strings_policy.md)
- [Unit Tests](unit-tests.md)
- [Travis CI](travis-ci.md)
- [Unauthenticated REST Interface](REST-interface.md)
- [Shared Libraries](shared-libraries.md)

View File

@ -1,18 +0,0 @@
Compiling/running unit tests
------------------------------------
Unit tests will be automatically compiled if dependencies were met in `./configure`
and tests weren't explicitly disabled.
After configuring, they can be run with `make check`.
To run the dashd tests manually, launch `src/test/test_dash`.
To add more dashd tests, add `BOOST_AUTO_TEST_CASE` functions to the existing
.cpp files in the `test/` directory or add new .cpp files that
implement new BOOST_AUTO_TEST_SUITE sections.
To run the dash-qt tests manually, launch `src/qt/test/test_dash-qt`
To add more dash-qt tests, add them to the `src/qt/test/` directory and
the `src/qt/test/test_main.cpp` file.

View File

@ -1,4 +1,36 @@
# Notes
### Compiling/running unit tests
Unit tests will be automatically compiled if dependencies were met in `./configure`
and tests weren't explicitly disabled.
After configuring, they can be run with `make check`.
To run the dashd tests manually, launch `src/test/test_dash`.
To add more dashd tests, add `BOOST_AUTO_TEST_CASE` functions to the existing
.cpp files in the `test/` directory or add new .cpp files that
implement new BOOST_AUTO_TEST_SUITE sections.
To run the dash-qt tests manually, launch `src/qt/test/test_dash-qt`
To add more dash-qt tests, add them to the `src/qt/test/` directory and
the `src/qt/test/test_main.cpp` file.
### Running individual tests
test_dash has some built-in command-line arguments; for
example, to run just the getarg_tests verbosely:
test_dash --log_level=all --run_test=getarg_tests
... or to run just the doubledash test:
test_dash --run_test=getarg_tests/doubledash
Run `test_dash --help` for the full list.
### Note on adding test cases
The sources in this directory are unit test cases. Boost includes a
unit testing framework, and since Dash Core already uses boost, it makes
sense to simply use this framework rather than require developers to
@ -19,20 +51,9 @@ For further reading, I found the following website to be helpful in
explaining how the boost unit test framework works:
[http://www.alittlemadness.com/2009/03/31/c-unit-testing-with-boosttest/](http://www.alittlemadness.com/2009/03/31/c-unit-testing-with-boosttest/).
test_dash has some built-in command-line arguments; for
example, to run just the getarg_tests verbosely:
test_dash --log_level=all --run_test=getarg_tests
... or to run just the doubledash test:
test_dash --run_test=getarg_tests/doubledash
Run `test_dash --help` for the full list.
### bitcoin-util-test.py
The test directory also contains the bitcoin-util-test.py tool, which tests bitcoin utils (currently just bitcoin-tx). This test gets run automatically during the `make check` build process. It is also possible to run the test manually from the src directory:
The test directory also contains the bitcoin-util-test.py tool, which tests bitcoin utils (currently just dash-tx). This test gets run automatically during the `make check` build process. It is also possible to run the test manually from the src directory:
```
test/bitcoin-util-test.py --srcdir=[current directory]