-
Notifications
You must be signed in to change notification settings - Fork 329
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test packet relaying on ordered channels #1835
Comments
Testing this in a real setup appears to require a modified Gaia with the transfer module hacked to use ordered channels. I guess we should go for a test case simulating out-or-order packet relaying in the test framework. |
I have setup a Gaia branch that support ordered transfer channel at https://github.com/informalsystems/gaia/tree/v6.0.1-ordered. Currently the Nix build at Cosmos.nix is not working due to the You can still build the Go project manually, and expose the custom After this you should see the some tests like |
Great progress!
Is
One proposal for next steps that would be sensible is:
Any thoughts? |
Notes on testing that relaying packets is done in order with @seanchen1991.
$ git diff
diff --git a/tools/integration-test/src/bootstrap/binary/channel.rs b/tools/integration-test/src/bootstrap/binary/channel.rs
index a07f9592..79886c79 100644
--- a/tools/integration-test/src/bootstrap/binary/channel.rs
+++ b/tools/integration-test/src/bootstrap/binary/channel.rs
@@ -82,7 +82,7 @@ pub fn bootstrap_channel_with_connection<ChainA: ChainHandle, ChainB: ChainHandl
let channel = Channel::new(
connection.connection.clone(),
- Order::Unordered,
+ Order::Ordered,
port_a.0.clone(),
port_b.0.clone(),
None,
diff --git a/tools/integration-test/src/tests/clear_packet.rs b/tools/integration-test/src/tests/clear_packet.rs
index ec9d0331..a9ff109e 100644
--- a/tools/integration-test/src/tests/clear_packet.rs
+++ b/tools/integration-test/src/tests/clear_packet.rs
@@ -14,7 +14,7 @@ impl TestOverrides for ClearPacketTest {
fn modify_relayer_config(&self, config: &mut Config) {
// Disabling clear_on_start should make the relayer not
// relay any packet it missed before starting.
- config.mode.packets.clear_on_start = false;
+ config.mode.packets.clear_on_start = true;
config.mode.packets.clear_interval = 0;
}
@@ -110,7 +110,7 @@ impl BinaryChannelTest for ClearPacketTest {
// Wallet on chain B should only receive the second IBC transfer
chains.node_b.chain_driver().assert_eventual_wallet_amount(
&wallet_b.as_ref(),
- amount2,
+ amount2 + amount1,
&denom_b.as_ref(),
)?;
|
I have created #1887 to test the described steps. I leave |
Summary
In preparation for releasing ICA on the hub, we would like to do some testing that channel ordering works as expected in Hermes.
Proposal
Stretch goal:
Acceptance Criteria
For Admin Use
The text was updated successfully, but these errors were encountered: