Repository: bitcoin/bitcoin
File: test/functional/test_framework/test_framework.py (Python)

Code before:
            raise SkipTest("wallet has not been compiled.")

    def skip_if_no_wallet_tool(self):
        """Skip the running test if bitcoin-wallet has not been compiled."""
        if not self.is_wallet_tool_compiled():
            raise SkipTest("bitcoin-wallet has not been compiled")

    def skip_if_no_bitcoin_tx(self):
        """Skip the running test if bitcoin-tx has not been compiled."""
        if not self.is_bitcoin_tx_compiled():
            raise SkipTest("bitcoin-tx has not been compiled")

    def skip_if_no_bitcoin_util(self):
        """Skip the running test if bitcoin-util has not been compiled."""
        if not self.is_bitcoin_util_compiled():
            raise SkipTest("bitcoin-util has not been compiled")

    def skip_if_no_bitcoin_chainstate(self):
        """Skip the running test if bitcoin-chainstate has not been compiled."""
        if not self.is_bitcoin_chainstate_compiled():
            raise SkipTest("bitcoin-chainstate has not been compiled")

    def skip_if_no_bitcoin_bench(self):
        """Skip the running test if bitcoin_bench has not been compiled."""
        if not self.is_bench_compiled():
            raise SkipTest("bitcoin_bench has not been compiled")

    def skip_if_no_cli(self):
        """Skip the running test if bitcoin-cli has not been compiled."""
        if not self.is_cli_compiled():
            raise SkipTest("bitcoin-cli has not been compiled.")

    def skip_if_no_ipc(self):
        """Skip the running test if ipc is not compiled."""
        if not self.is_ipc_compiled():
            raise SkipTest("ipc has not been compiled.")

    def skip_if_no_previous_releases(self):
        """Skip the running test if previous releases are not available."""
        if not self.has_previous_releases():
            raise SkipTest("previous releases not available or disabled")

    def has_previous_releases(self):
        """Checks whether previous releases are present and enabled."""
        if not os.path.isdir(self.options.previous_releases_path):
            if self.options.prev_releases:
                raise AssertionError("Force test of previous releases but releases missing: {}".format(
                    self.options.previous_releases_path))
        return self.options.prev_releases

    def skip_if_no_external_signer(self):

Review comment (suggestion):
Debatable if it should be `bitcoin_bench` (https://github.com/bitcoin/bitcoin/pull/33142/files#diff-e20e1f68486e5c096fdc11bca1cda063aacef524411f011d9c3497eb650c5eafR265) or `bench_bitcoin` (https://github.com/bitcoin/bitcoin/pull/33142/files#diff-e20e1f68486e5c096fdc11bca1cda063aacef524411f011d9c3497eb650c5eafR308), but this way the error (and a few other places) are confusing.
```suggestion
            raise SkipTest("bench_bitcoin has not been compiled")
```

Code after:
            raise SkipTest("wallet has not been compiled.")

    def skip_if_no_wallet_tool(self):
        """Skip the running test if bitcoin-wallet has not been compiled."""
        if not self.is_wallet_tool_compiled():
            raise SkipTest("bitcoin-wallet has not been compiled")

    def skip_if_no_bitcoin_tx(self):
        """Skip the running test if bitcoin-tx has not been compiled."""
        if not self.is_bitcoin_tx_compiled():
            raise SkipTest("bitcoin-tx has not been compiled")

    def skip_if_no_bitcoin_util(self):
        """Skip the running test if bitcoin-util has not been compiled."""
        if not self.is_bitcoin_util_compiled():
            raise SkipTest("bitcoin-util has not been compiled")

    def skip_if_no_bitcoin_chainstate(self):
        """Skip the running test if bitcoin-chainstate has not been compiled."""
        if not self.is_bitcoin_chainstate_compiled():
            raise SkipTest("bitcoin-chainstate has not been compiled")

    def skip_if_no_bitcoin_bench(self):
        """Skip the running test if bench_bitcoin has not been compiled."""
        if not self.is_bench_compiled():
            raise SkipTest("bench_bitcoin has not been compiled")

    def skip_if_no_cli(self):
        """Skip the running test if bitcoin-cli has not been compiled."""
        if not self.is_cli_compiled():
            raise SkipTest("bitcoin-cli has not been compiled.")

    def skip_if_no_ipc(self):
        """Skip the running test if ipc is not compiled."""
        if not self.is_ipc_compiled():
            raise SkipTest("ipc has not been compiled.")

    def skip_if_no_previous_releases(self):
        """Skip the running test if previous releases are not available."""
        if not self.has_previous_releases():
            raise SkipTest("previous releases not available or disabled")

    def has_previous_releases(self):
        """Checks whether previous releases are present and enabled."""
        if not os.path.isdir(self.options.previous_releases_path):
            if self.options.prev_releases:
                raise AssertionError("Force test of previous releases but releases missing: {}".format(
                    self.options.previous_releases_path))
        return self.options.prev_releases

    def skip_if_no_external_signer(self):