Skip to content

Commit 158b718

Browse files
committed
refactor: simplified further
1 parent dae0975 commit 158b718

File tree

4 files changed

+19
-41
lines changed

4 files changed

+19
-41
lines changed

e2e/interchaintest/types/contract.go

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package types
22

33
import (
44
"context"
5+
"encoding/json"
56

67
"github.com/strangelove-ventures/interchaintest/v7/chain/cosmos"
78
)
@@ -25,19 +26,28 @@ func (c *Contract) Port() string {
2526
return "wasm." + c.Address
2627
}
2728

29+
// ExecAnyMsg executes the contract with the given exec message.
2830
func (c *Contract) ExecAnyMsg(ctx context.Context, callerKeyName string, execMsg string, extraExecTxArgs ...string) error {
2931
_, err := c.Chain.ExecuteContract(ctx, callerKeyName, c.Address, execMsg, extraExecTxArgs...)
3032
return err
3133
}
3234

35+
// QueryAnyMsg queries the contract with the given query message and returns the response.
3336
func QueryAnyMsg[T any](ctx context.Context, c *Contract, queryMsg any) (*T, error) {
34-
queryResp := QueryResponse[T]{}
37+
// QueryResponse is used to represent the response of a query.
38+
// It may contain different types of data, so we need to unmarshal it
39+
type QueryResponse struct {
40+
Response json.RawMessage `json:"data"`
41+
}
42+
43+
queryResp := QueryResponse{}
3544
err := c.Chain.QueryContract(ctx, c.Address, queryMsg, &queryResp)
3645
if err != nil {
3746
return nil, err
3847
}
3948

40-
resp, err := queryResp.GetResp()
49+
var resp T
50+
err = json.Unmarshal(queryResp.Response, &resp)
4151
if err != nil {
4252
return nil, err
4353
}

e2e/interchaintest/types/cosmwasm.go

Lines changed: 0 additions & 16 deletions
This file was deleted.

e2e/interchaintest/types/counter_msg.go

Lines changed: 0 additions & 20 deletions
This file was deleted.

e2e/interchaintest/wasm_msg_test.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ import (
2020
"github.com/srdtrk/cw-ica-controller/interchaintest/v2/types/icacontroller"
2121
)
2222

23+
type GetCountResponse struct {
24+
Count int64 `json:"count"`
25+
}
26+
2327
func (s *ContractTestSuite) SetupWasmTestSuite(ctx context.Context, encoding string) uint64 {
2428
wasmChainSpecs := []*interchaintest.ChainSpec{
2529
chainSpecs[0],
@@ -164,7 +168,7 @@ func (s *ContractTestSuite) SendWasmMsgsTestWithEncoding(encoding string) {
164168
wasmd2,
165169
)
166170

167-
counterState, err := types.QueryAnyMsg[types.GetCountResponse](ctx, &counterContract, `{"get_count": {}}`)
171+
counterState, err := types.QueryAnyMsg[GetCountResponse](ctx, &counterContract, `{"get_count": {}}`)
168172
s.Require().NoError(err)
169173

170174
s.Require().Equal(int64(0), counterState.Count)
@@ -223,7 +227,7 @@ func (s *ContractTestSuite) SendWasmMsgsTestWithEncoding(encoding string) {
223227
s.Require().Equal(uint64(2), callbackCounter.Success)
224228
s.Require().Equal(uint64(0), callbackCounter.Error)
225229

226-
counterState, err := types.QueryAnyMsg[types.GetCountResponse](ctx, &counterContract, `{"get_count": {}}`)
230+
counterState, err := types.QueryAnyMsg[GetCountResponse](ctx, &counterContract, `{"get_count": {}}`)
227231
s.Require().NoError(err)
228232

229233
s.Require().Equal(int64(1), counterState.Count)
@@ -294,7 +298,7 @@ func (s *ContractTestSuite) SendWasmMsgsTestWithEncoding(encoding string) {
294298
s.Require().Equal(uint64(3), callbackCounter.Success)
295299
s.Require().Equal(uint64(0), callbackCounter.Error)
296300

297-
counterState, err := types.QueryAnyMsg[types.GetCountResponse](ctx, &counter2Contract, `{"get_count": {}}`)
301+
counterState, err := types.QueryAnyMsg[GetCountResponse](ctx, &counter2Contract, `{"get_count": {}}`)
298302
s.Require().NoError(err)
299303

300304
s.Require().Equal(int64(0), counterState.Count)

0 commit comments

Comments
 (0)