Skip to content

Commit 70ee150

Browse files
committed
store genesis host consensus state
1 parent 56a203c commit 70ee150

File tree

6 files changed

+21
-18
lines changed

6 files changed

+21
-18
lines changed

ibc-testkit/src/context.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@ use ibc::core::host::types::path::{
2020
ChannelEndPath, ClientConsensusStatePath, ClientStatePath, CommitmentPath, ConnectionPath,
2121
SeqAckPath, SeqRecvPath, SeqSendPath,
2222
};
23-
use ibc::core::host::ExecutionContext;
24-
use ibc::core::host::ValidationContext;
23+
use ibc::core::host::{ExecutionContext, ValidationContext};
2524
use ibc::primitives::prelude::*;
2625
use ibc::primitives::proto::Any;
2726
use ibc::primitives::Timestamp;

ibc-testkit/src/fixtures/core/context.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
use alloc::fmt::Debug;
22
use core::time::Duration;
3-
use ibc::core::client::context::client_state::ClientStateExecution;
4-
use ibc::core::client::context::ClientExecutionContext;
5-
use ibc::core::client::types::error::ClientError;
6-
use ibc::primitives::proto::Any;
73

84
use basecoin_store::context::ProvableStore;
5+
use ibc::core::client::context::client_state::ClientStateExecution;
96
use ibc::core::client::context::consensus_state::ConsensusState;
7+
use ibc::core::client::context::ClientExecutionContext;
8+
use ibc::core::client::types::error::ClientError;
109
use ibc::core::client::types::Height;
1110
use ibc::core::primitives::prelude::*;
1211
use ibc::core::primitives::Timestamp;
12+
use ibc::primitives::proto::Any;
1313
use typed_builder::TypedBuilder;
1414

1515
use crate::context::StoreGenericTestContext;

ibc-testkit/src/relayer/integration.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ use core::fmt::Debug;
22

33
use basecoin_store::context::ProvableStore;
44
use ibc::core::client::context::client_state::ClientStateExecution;
5+
use ibc::core::client::context::consensus_state::ConsensusState;
56
use ibc::core::client::context::ClientExecutionContext;
67
use ibc::core::client::types::error::ClientError;
78
use ibc::core::host::types::identifiers::{ChannelId, ConnectionId, PortId};
@@ -12,7 +13,6 @@ use crate::fixtures::core::signer::dummy_account_id;
1213
use crate::hosts::{HostClientState, HostConsensusState, TestHost};
1314
use crate::relayer::context::RelayerContext;
1415
use crate::testapp::ibc::core::types::MockIbcStore;
15-
use ibc::core::client::context::consensus_state::ConsensusState;
1616

1717
/// Integration test for IBC implementation. This test creates clients,
1818
/// connections, channels between two [`TestHost`]s.

ibc-testkit/src/relayer/utils.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@ use alloc::string::String;
22
use core::fmt::Debug;
33
use core::marker::PhantomData;
44
use core::time::Duration;
5-
use ibc::core::client::context::{ClientExecutionContext, ClientValidationContext};
6-
use ibc::core::client::types::error::ClientError;
7-
use ibc::primitives::proto::Any;
85

96
use basecoin_store::context::ProvableStore;
107
use ibc::core::channel::types::acknowledgement::Acknowledgement;
@@ -19,6 +16,8 @@ use ibc::core::channel::types::timeout::TimeoutHeight;
1916
use ibc::core::channel::types::Version as ChannelVersion;
2017
use ibc::core::client::context::client_state::ClientStateExecution;
2118
use ibc::core::client::context::consensus_state::ConsensusState;
19+
use ibc::core::client::context::{ClientExecutionContext, ClientValidationContext};
20+
use ibc::core::client::types::error::ClientError;
2221
use ibc::core::client::types::msgs::{ClientMsg, MsgCreateClient, MsgUpdateClient};
2322
use ibc::core::connection::types::msgs::{
2423
ConnectionMsg, MsgConnectionOpenAck, MsgConnectionOpenConfirm, MsgConnectionOpenInit,
@@ -34,6 +33,7 @@ use ibc::core::host::types::path::{
3433
ConnectionPath, ReceiptPath,
3534
};
3635
use ibc::core::host::ValidationContext;
36+
use ibc::primitives::proto::Any;
3737
use ibc::primitives::Signer;
3838
use ibc_query::core::context::ProvableContext;
3939

ibc-testkit/src/testapp/ibc/clients/mod.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ use ibc::core::client::types::Height;
1515
use ibc::core::primitives::prelude::*;
1616
use ibc::derive::{ClientState, ConsensusState};
1717
use ibc::primitives::proto::{Any, Protobuf};
18+
use mock::header::MockHeader;
1819

1920
use super::core::types::MockIbcStore;
21+
use crate::hosts::TestHeader;
2022
use crate::testapp::ibc::clients::mock::client_state::{
2123
MockClientState, MOCK_CLIENT_STATE_TYPE_URL,
2224
};
@@ -111,6 +113,12 @@ impl TryFrom<Any> for AnyConsensusState {
111113
}
112114
}
113115

116+
impl Default for AnyConsensusState {
117+
fn default() -> Self {
118+
Self::Mock(MockHeader::default().into_consensus_state())
119+
}
120+
}
121+
114122
impl From<AnyConsensusState> for Any {
115123
fn from(host_consensus_state: AnyConsensusState) -> Self {
116124
match host_consensus_state {

ibc-testkit/src/testapp/ibc/core/types.rs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
33
use alloc::sync::Arc;
44
use core::fmt::Debug;
5-
use ibc::core::client::context::ClientExecutionContext;
6-
use ibc::core::client::types::error::ClientError;
75

86
use basecoin_store::context::{ProvableStore, Store};
97
use basecoin_store::impls::SharedStore;
@@ -12,6 +10,8 @@ use ibc::core::channel::types::channel::ChannelEnd;
1210
use ibc::core::channel::types::commitment::{AcknowledgementCommitment, PacketCommitment};
1311
use ibc::core::client::context::client_state::{ClientStateExecution, ClientStateValidation};
1412
use ibc::core::client::context::consensus_state::ConsensusState;
13+
use ibc::core::client::context::ClientExecutionContext;
14+
use ibc::core::client::types::error::ClientError;
1515
use ibc::core::client::types::Height;
1616
use ibc::core::connection::types::ConnectionEnd;
1717
use ibc::core::handler::types::events::IbcEvent;
@@ -180,16 +180,12 @@ impl<S, ACL, ACS> Default for MockIbcStore<S, ACL, ACS>
180180
where
181181
S: ProvableStore + Debug + Default,
182182
ACL: ClientStateValidation<Self> + Clone,
183-
ACS: ConsensusState + Clone,
183+
ACS: ConsensusState + Clone + Default,
184184
{
185185
fn default() -> Self {
186186
let mut ibc_store = Self::new(0, S::default());
187187
ibc_store.store.commit().expect("no error");
188-
// // FIXME(rano): store a consensus state.
189-
// ibc_store.store_host_consensus_state(
190-
// ibc_store.store.current_height(),
191-
// MockHeader::default().into_consensus_state().into(),
192-
// );
188+
ibc_store.store_host_consensus_state(ibc_store.store.current_height(), ACS::default());
193189
ibc_store.store_ibc_commitment_proof(
194190
ibc_store.store.current_height(),
195191
CommitmentProof::default(),

0 commit comments

Comments
 (0)