mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-08-29 15:57:15 +02:00
clusterlin: add big comment explaning the relation between tests
This commit is contained in:
@@ -17,6 +17,63 @@
|
|||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The tests in this file primarily cover the candidate finder classes and linearization algorithms.
|
||||||
|
*
|
||||||
|
* <----: An implementation (at the start of the line --) is tested in the test marked with *,
|
||||||
|
* possibly by comparison with other implementations (at the end of the line ->).
|
||||||
|
* <<---: The right side is implemented using the left side.
|
||||||
|
*
|
||||||
|
* +-----------------------+
|
||||||
|
* | SearchCandidateFinder | <<---------------------\
|
||||||
|
* +-----------------------+ |
|
||||||
|
* | +-----------+
|
||||||
|
* | | Linearize |
|
||||||
|
* | +-----------+
|
||||||
|
* | +-------------------------+ | |
|
||||||
|
* | | AncestorCandidateFinder | <<--------/ |
|
||||||
|
* | +-------------------------+ |
|
||||||
|
* | | ^ | ^^ PRODUCTION CODE
|
||||||
|
* | | | | ||
|
||||||
|
* ==============================================================================================
|
||||||
|
* | | | | ||
|
||||||
|
* | clusterlin_ancestor_finder* | | vv TEST CODE
|
||||||
|
* | | |
|
||||||
|
* |-clusterlin_search_finder* | |-clusterlin_linearize*
|
||||||
|
* | | |
|
||||||
|
* v | v
|
||||||
|
* +-----------------------+ | +-----------------+
|
||||||
|
* | SimpleCandidateFinder | <<-------------------| SimpleLinearize |
|
||||||
|
* +-----------------------+ | +-----------------+
|
||||||
|
* | | |
|
||||||
|
* +-------------------/ |
|
||||||
|
* | |
|
||||||
|
* |-clusterlin_simple_finder* |-clusterlin_simple_linearize*
|
||||||
|
* v v
|
||||||
|
* +---------------------------+ +---------------------+
|
||||||
|
* | ExhaustiveCandidateFinder | | ExhaustiveLinearize |
|
||||||
|
* +---------------------------+ +---------------------+
|
||||||
|
*
|
||||||
|
* More tests are included for lower-level and related functions and classes:
|
||||||
|
* - DepGraph tests:
|
||||||
|
* - clusterlin_depgraph_sim
|
||||||
|
* - clusterlin_depgraph_serialization
|
||||||
|
* - clusterlin_components
|
||||||
|
* - ChunkLinearization and LinearizationChunking tests:
|
||||||
|
* - clusterlin_chunking
|
||||||
|
* - clusterlin_linearization_chunking
|
||||||
|
* - PostLinearize tests:
|
||||||
|
* - clusterlin_postlinearize
|
||||||
|
* - clusterlin_postlinearize_tree
|
||||||
|
* - clusterlin_postlinearize_moved_leaf
|
||||||
|
* - MergeLinearization tests:
|
||||||
|
* - clusterlin_merge
|
||||||
|
* - FixLinearization tests:
|
||||||
|
* - clusterlin_fix_linearization
|
||||||
|
* - MakeConnected tests (a test-only function):
|
||||||
|
* - clusterlin_make_connected
|
||||||
|
*/
|
||||||
|
|
||||||
using namespace cluster_linearize;
|
using namespace cluster_linearize;
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
Reference in New Issue
Block a user