mirror of https://github.com/certusone/wasmd.git
Adapt codebase to new IBC3ChannelOpenResponse return value
This commit is contained in:
parent
5809ca2843
commit
53e735d76e
|
@ -34,7 +34,8 @@ func (k Keeper) OnOpenChannel(
|
|||
querier := k.newQueryHandler(ctx, contractAddr)
|
||||
|
||||
gas := k.runtimeGasForContract(ctx)
|
||||
gasUsed, execErr := k.wasmVM.IBCChannelOpen(codeInfo.CodeHash, env, msg, prefixStore, cosmwasmAPI, querier, ctx.GasMeter(), gas, costJSONDeserialization)
|
||||
// TODO: we probably want to use the response somehow
|
||||
_, gasUsed, execErr := k.wasmVM.IBCChannelOpen(codeInfo.CodeHash, env, msg, prefixStore, cosmwasmAPI, querier, ctx.GasMeter(), gas, costJSONDeserialization)
|
||||
k.consumeRuntimeGas(ctx, gasUsed)
|
||||
if execErr != nil {
|
||||
return sdkerrors.Wrap(types.ErrExecuteFailed, execErr.Error())
|
||||
|
|
|
@ -57,9 +57,9 @@ func TestOnOpenChannel(t *testing.T) {
|
|||
t.Run(name, func(t *testing.T) {
|
||||
myChannel := wasmvmtypes.IBCChannel{Version: "my test channel"}
|
||||
myMsg := wasmvmtypes.IBCChannelOpenMsg{OpenTry: &wasmvmtypes.IBCOpenTry{Channel: myChannel, CounterpartyVersion: "foo"}}
|
||||
m.IBCChannelOpenFn = func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (uint64, error) {
|
||||
m.IBCChannelOpenFn = func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error) {
|
||||
assert.Equal(t, myMsg, msg)
|
||||
return spec.contractGas * DefaultGasMultiplier, spec.contractErr
|
||||
return &wasmvmtypes.IBC3ChannelOpenResponse{}, spec.contractGas * DefaultGasMultiplier, spec.contractErr
|
||||
}
|
||||
|
||||
ctx, _ := parentCtx.CacheContext()
|
||||
|
|
|
@ -27,7 +27,7 @@ type MockWasmer struct {
|
|||
ReplyFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, reply wasmvmtypes.Reply, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.Response, uint64, error)
|
||||
GetCodeFn func(codeID wasmvm.Checksum) (wasmvm.WasmCode, error)
|
||||
CleanupFn func()
|
||||
IBCChannelOpenFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (uint64, error)
|
||||
IBCChannelOpenFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error)
|
||||
IBCChannelConnectFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelConnectMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBCBasicResponse, uint64, error)
|
||||
IBCChannelCloseFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelCloseMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBCBasicResponse, uint64, error)
|
||||
IBCPacketReceiveFn func(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCPacketReceiveMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBCReceiveResult, uint64, error)
|
||||
|
@ -38,7 +38,7 @@ type MockWasmer struct {
|
|||
GetMetricsFn func() (*wasmvmtypes.Metrics, error)
|
||||
}
|
||||
|
||||
func (m *MockWasmer) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (uint64, error) {
|
||||
func (m *MockWasmer) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error) {
|
||||
if m.IBCChannelOpenFn == nil {
|
||||
panic("not supposed to be called!")
|
||||
}
|
||||
|
@ -210,7 +210,7 @@ type IBCContractCallbacks interface {
|
|||
gasMeter wasmvm.GasMeter,
|
||||
gasLimit uint64,
|
||||
deserCost wasmvmtypes.UFraction,
|
||||
) (uint64, error)
|
||||
) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error)
|
||||
|
||||
IBCChannelConnect(
|
||||
codeID wasmvm.Checksum,
|
||||
|
|
|
@ -180,11 +180,11 @@ func (p *player) Execute(code wasmvm.Checksum, env wasmvmtypes.Env, info wasmvmt
|
|||
}
|
||||
|
||||
// OnIBCChannelOpen ensures to accept only configured version
|
||||
func (p player) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (uint64, error) {
|
||||
func (p player) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error) {
|
||||
if msg.GetChannel().Version != p.actor {
|
||||
return 0, nil
|
||||
return &wasmvmtypes.IBC3ChannelOpenResponse{}, 0, nil
|
||||
}
|
||||
return 0, nil
|
||||
return &wasmvmtypes.IBC3ChannelOpenResponse{}, 0, nil
|
||||
}
|
||||
|
||||
// OnIBCChannelConnect persists connection endpoints
|
||||
|
|
|
@ -605,8 +605,8 @@ func (c *errorReceiverContract) IBCPacketReceive(codeID wasmvm.Checksum, env was
|
|||
// simple helper struct that implements connection setup methods.
|
||||
type contractStub struct{}
|
||||
|
||||
func (s *contractStub) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (uint64, error) {
|
||||
return 0, nil
|
||||
func (s *contractStub) IBCChannelOpen(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelOpenMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error) {
|
||||
return &wasmvmtypes.IBC3ChannelOpenResponse{}, 0, nil
|
||||
}
|
||||
|
||||
func (s *contractStub) IBCChannelConnect(codeID wasmvm.Checksum, env wasmvmtypes.Env, msg wasmvmtypes.IBCChannelConnectMsg, store wasmvm.KVStore, goapi wasmvm.GoAPI, querier wasmvm.Querier, gasMeter wasmvm.GasMeter, gasLimit uint64, deserCost wasmvmtypes.UFraction) (*wasmvmtypes.IBCBasicResponse, uint64, error) {
|
||||
|
|
|
@ -148,7 +148,7 @@ type WasmerEngine interface {
|
|||
gasMeter wasmvm.GasMeter,
|
||||
gasLimit uint64,
|
||||
deserCost wasmvmtypes.UFraction,
|
||||
) (uint64, error)
|
||||
) (*wasmvmtypes.IBC3ChannelOpenResponse, uint64, error)
|
||||
|
||||
// IBCChannelConnect is available on IBC-enabled contracts and is a hook to call into
|
||||
// during the handshake pahse
|
||||
|
|
Loading…
Reference in New Issue