Establish an interface the Endpoint type in the testing pkg can use to interact with TestChains generically #4808
Labels
needs discussion
Issues that need discussion before they can be worked on
testing
Testing package and unit/integration tests
type: dependency management
Relating to managing the ibc dependency graph
Milestone
Summary
In a similar sentiment to #4807, an interface should be established for allowing the endpoint to work with any type of TestChain, not just the one implemented in ibc-go. This is primarily beneficial for simplifying solo machine tests and enabling usage of the testing pkg by other light client modules written in go.
Problem Definition
The Endpoint type currently references a concrete type rather than an interface. The current concrete type is a mock cometbft chain, by determining the interface the Endpoint type uses from the TestChain, we can enable the Endpoint to be used generically with a variety of TestChain's and light client modules.
Proposal
Turn the chain reference in the Endpoint into an interface. This will require having a interface function for proof queries and submitting msgs at a minimum. It should be developed with the solo machine in mind as that is likely to give a good influence on the required interfaces and how to structure them in a way that makes it easy for light client modules to plug into the testing pkg
For Admin Use
The text was updated successfully, but these errors were encountered: