diff --git a/lnprototest/clightning/clightning.py b/lnprototest/clightning/clightning.py index 5672a17..7274a63 100644 --- a/lnprototest/clightning/clightning.py +++ b/lnprototest/clightning/clightning.py @@ -29,6 +29,7 @@ Conn, namespace, MustNotMsg, + bitfield, ) from lnprototest import wait_for from typing import Dict, Any, Callable, List, Optional, cast diff --git a/lnprototest/runner.py b/lnprototest/runner.py index 74b52fa..d48aed3 100644 --- a/lnprototest/runner.py +++ b/lnprototest/runner.py @@ -120,6 +120,16 @@ def teardown(self): and it is used to clean up the root dir where the tests are run.""" shutil.rmtree(self.directory) + def runner_features( + self, + additional_features: Optional[List[int]] = None, + field_name: Optional[str] = None, + ) -> str: + """ + Provide the features required by the node. + """ + return "" + @abstractmethod def is_running(self) -> bool: """Return a boolean value that tells whether the runner is running diff --git a/tests/test_bolt2-01-close_channel.py b/tests/test_bolt2-01-close_channel.py index f9dfb2c..040c08a 100644 --- a/tests/test_bolt2-01-close_channel.py +++ b/tests/test_bolt2-01-close_channel.py @@ -56,7 +56,11 @@ def test_close_channel_shutdown_msg_normal_case_receiver_side(runner: Runner) -> # the option that the helper method feels for us test_opts = {} pre_events_conn = connect_to_node_helper( - runner, tx_spendable=tx_spendable, conn_privkey="03" + runner=runner, + tx_spendable=tx_spendable, + conn_privkey="03", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) pre_events = open_and_announce_channel_helper( runner, conn_privkey="03", opts=test_opts @@ -105,7 +109,11 @@ def test_close_channel_shutdown_msg_normal_case_sender_side(runner: Runner) -> N # the option that the helper method feels for us test_opts = {} pre_events_conn = connect_to_node_helper( - runner, tx_spendable=tx_spendable, conn_privkey="03" + runner=runner, + tx_spendable=tx_spendable, + conn_privkey="03", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) pre_events = open_and_announce_channel_helper( runner, conn_privkey="03", opts=test_opts @@ -140,7 +148,11 @@ def test_close_channel_shutdown_msg_wrong_script_pubkey_receiver_side( # the option that the helper method feels for us test_opts = {} pre_events_conn = connect_to_node_helper( - runner, tx_spendable=tx_spendable, conn_privkey="03" + runner=runner, + tx_spendable=tx_spendable, + conn_privkey="03", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) pre_events = open_and_announce_channel_helper( runner, conn_privkey="03", opts=test_opts diff --git a/tests/test_bolt2-01-open_channel.py b/tests/test_bolt2-01-open_channel.py index dfbe8c0..6cfe1ac 100644 --- a/tests/test_bolt2-01-open_channel.py +++ b/tests/test_bolt2-01-open_channel.py @@ -74,7 +74,11 @@ def test_open_channel_from_accepter_side(runner: Runner) -> None: local_funding_privkey = "20" local_keyset = gen_random_keyset(int(local_funding_privkey)) connections_events = connect_to_node_helper( - runner=runner, tx_spendable=tx_spendable, conn_privkey="02" + runner=runner, + tx_spendable=tx_spendable, + conn_privkey="02", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) # Accepter side: we initiate a new channel. @@ -179,7 +183,11 @@ def test_open_channel_opener_side(runner: Runner) -> None: local_funding_privkey = "20" local_keyset = gen_random_keyset(int(local_funding_privkey)) connections_events = connect_to_node_helper( - runner=runner, tx_spendable=tx_spendable, conn_privkey="02" + runner=runner, + tx_spendable=tx_spendable, + conn_privkey="02", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) # Now we test the 'opener' side of an open_channel (node initiates) diff --git a/tests/test_bolt2-02-reestablish.py b/tests/test_bolt2-02-reestablish.py index 329a5f3..e309301 100644 --- a/tests/test_bolt2-02-reestablish.py +++ b/tests/test_bolt2-02-reestablish.py @@ -69,6 +69,8 @@ def test_reestablish(runner: Runner) -> None: runner=runner, tx_spendable=tx_spendable, conn_privkey="02", + global_features=runner.runner_features(field_name="global_features"), + features=runner.runner_features(field_name="features"), ) test_events = [