Files
cac3/scripts/README.md
T
Sami Ahmed bb18cacc58 Add scripts/test.sh — install deps + run unit + functional tests.
One-shot entry point to verify the nyc3-source import builds and
passes. Tomorrow's first step will be:

  bash scripts/test.sh

It auto-installs apt-get deps, runs autogen + configure, builds the
test_bitcoin binary, and runs both the boost unit suite (src/test/, 70
files) and the python functional suite (test/functional/, 115 files).

Logs land in .test-logs/test-<timestamp>.log.

Flag summary:
  --unit      only unit tests
  --func      only functional tests
  --quick     alias for --unit
  --no-build  assume build/ already populated
  --clean     nuke build/ first
2026-07-16 02:57:17 -07:00

1.1 KiB

scripts/

test.sh

bash scripts/test.sh — install deps, build, and run the CAC3 (nyc3-source) test suite end-to-end. Logs go to .test-logs/test-<timestamp>.log.

Flags:

  • --unit — only src/test/ boost unit tests
  • --func — only test/functional/ python tests
  • --quick — alias for --unit
  • --no-build — skip autogen/configure/make (assumes build/ already populated)
  • --clean — nuke build/ before starting

The script auto-installs Debian/Ubuntu deps via apt-get. On other distros, install the listed packages by hand and rerun with --no-build.

What this verifies

The nyc3 → cac3 source import is sound. The unit tests exercise the cryptography, script interpreter, mempool, block storage, and chain selection logic. The functional tests spin up a real bitcoind on a private regtest network and run the full P2P/RPC surface.

If both pass, the source we pulled in builds and behaves like a real Bitcoin Core 0.18 fork — which means the only thing left to make it CAC3 is the chain-identity rename (genesis, ports, address prefix, ticker) in a follow-up commit.