From 40bb1fdca50afbe1aeaf389c3c9e46f40267f6d8 Mon Sep 17 00:00:00 2001 From: Ethan Frey Date: Fri, 20 Oct 2017 20:36:12 +0200 Subject: [PATCH] Update ibc imports --- modules/ibc/commands/tx.go | 6 ++--- modules/ibc/ibc_test.go | 46 ++++++++++++++++++------------------ modules/ibc/provider.go | 12 +++++----- modules/ibc/provider_test.go | 8 +++---- modules/ibc/test_helpers.go | 11 ++++----- modules/ibc/tx.go | 4 ++-- 6 files changed, 43 insertions(+), 44 deletions(-) diff --git a/modules/ibc/commands/tx.go b/modules/ibc/commands/tx.go index 487803ca58..7ed4bdfd30 100644 --- a/modules/ibc/commands/tx.go +++ b/modules/ibc/commands/tx.go @@ -80,13 +80,13 @@ func postPacketTxCmd(cmd *cobra.Command, args []string) error { return txcmd.DoTx(post.Wrap()) } -func readSeed() (seed certifiers.Seed, err error) { +func readSeed() (fc certifiers.FullCommit, err error) { name := viper.GetString(FlagSeed) if name == "" { - return seed, errors.New("You must specify a seed file") + return fc, errors.New("You must specify a commit file") } - err = readFile(name, &seed) + err = readFile(name, &fc) return } diff --git a/modules/ibc/ibc_test.go b/modules/ibc/ibc_test.go index 7300746ca2..c588eca513 100644 --- a/modules/ibc/ibc_test.go +++ b/modules/ibc/ibc_test.go @@ -28,19 +28,19 @@ func TestIBCRegister(t *testing.T) { appHash2 := []byte{12, 34, 56, 78} // badSeed doesn't validate - badSeed := genEmptySeed(keys2, "chain-2", 123, appHash, len(keys2)) + badSeed := genEmptyCommit(keys2, "chain-2", 123, appHash, len(keys2)) badSeed.Header.AppHash = appHash2 cases := []struct { - seed certifiers.Seed + seed certifiers.FullCommit checker errors.CheckErr }{ { - genEmptySeed(keys, "chain-1", 100, appHash, len(keys)), + genEmptyCommit(keys, "chain-1", 100, appHash, len(keys)), errors.NoErr, }, { - genEmptySeed(keys, "chain-1", 200, appHash, len(keys)), + genEmptyCommit(keys, "chain-1", 200, appHash, len(keys)), IsAlreadyRegisteredErr, }, { @@ -48,7 +48,7 @@ func TestIBCRegister(t *testing.T) { IsInvalidCommitErr, }, { - genEmptySeed(keys2, "chain-2", 123, appHash2, 5), + genEmptyCommit(keys2, "chain-2", 123, appHash2, 5), errors.NoErr, }, } @@ -78,45 +78,45 @@ func TestIBCRegisterPermissions(t *testing.T) { foobaz := sdk.Actor{App: "foo", Address: []byte("baz")} cases := []struct { - seed certifiers.Seed + seed certifiers.FullCommit registrar sdk.Actor signer sdk.Actor checker errors.CheckErr }{ // no sig, no registrar { - seed: genEmptySeed(keys, "chain-1", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-1", 100, appHash, len(keys)), checker: errors.NoErr, }, // sig, no registrar { - seed: genEmptySeed(keys, "chain-2", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-2", 100, appHash, len(keys)), signer: foobaz, checker: errors.NoErr, }, // registrar, no sig { - seed: genEmptySeed(keys, "chain-3", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-3", 100, appHash, len(keys)), registrar: foobar, checker: errors.IsUnauthorizedErr, }, // registrar, wrong sig { - seed: genEmptySeed(keys, "chain-4", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-4", 100, appHash, len(keys)), signer: foobaz, registrar: foobar, checker: errors.IsUnauthorizedErr, }, // registrar, wrong sig { - seed: genEmptySeed(keys, "chain-5", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-5", 100, appHash, len(keys)), signer: baz, registrar: foobar, checker: errors.IsUnauthorizedErr, }, // registrar, proper sig { - seed: genEmptySeed(keys, "chain-6", 100, appHash, len(keys)), + seed: genEmptyCommit(keys, "chain-6", 100, appHash, len(keys)), signer: foobar, registrar: foobar, checker: errors.NoErr, @@ -151,7 +151,7 @@ func TestIBCUpdate(t *testing.T) { keys := certifiers.GenValKeys(7) appHash := []byte{0, 4, 7, 23} start := 100 // initial height - root := genEmptySeed(keys, "chain-1", 100, appHash, len(keys)) + root := genEmptyCommit(keys, "chain-1", 100, appHash, len(keys)) keys2 := keys.Extend(2) keys3 := keys2.Extend(2) @@ -165,47 +165,47 @@ func TestIBCUpdate(t *testing.T) { require.Nil(err, "%+v", err) cases := []struct { - seed certifiers.Seed + seed certifiers.FullCommit checker errors.CheckErr }{ // same validator, higher up { - genEmptySeed(keys, "chain-1", start+50, []byte{22}, len(keys)), + genEmptyCommit(keys, "chain-1", start+50, []byte{22}, len(keys)), errors.NoErr, }, // same validator, between existing (not most recent) { - genEmptySeed(keys, "chain-1", start+5, []byte{15, 43}, len(keys)), + genEmptyCommit(keys, "chain-1", start+5, []byte{15, 43}, len(keys)), errors.NoErr, }, // same validators, before root of trust { - genEmptySeed(keys, "chain-1", start-8, []byte{11, 77}, len(keys)), + genEmptyCommit(keys, "chain-1", start-8, []byte{11, 77}, len(keys)), IsHeaderNotFoundErr, }, // insufficient signatures { - genEmptySeed(keys, "chain-1", start+60, []byte{24}, len(keys)/2), + genEmptyCommit(keys, "chain-1", start+60, []byte{24}, len(keys)/2), IsInvalidCommitErr, }, // unregistered chain { - genEmptySeed(keys, "chain-2", start+60, []byte{24}, len(keys)/2), + genEmptyCommit(keys, "chain-2", start+60, []byte{24}, len(keys)/2), IsNotRegisteredErr, }, // too much change (keys -> keys3) { - genEmptySeed(keys3, "chain-1", start+100, []byte{22}, len(keys3)), + genEmptyCommit(keys3, "chain-1", start+100, []byte{22}, len(keys3)), IsInvalidCommitErr, }, // legit update to validator set (keys -> keys2) { - genEmptySeed(keys2, "chain-1", start+90, []byte{33}, len(keys2)), + genEmptyCommit(keys2, "chain-1", start+90, []byte{33}, len(keys2)), errors.NoErr, }, // now impossible jump works (keys -> keys2 -> keys3) { - genEmptySeed(keys3, "chain-1", start+100, []byte{44}, len(keys3)), + genEmptyCommit(keys3, "chain-1", start+100, []byte{44}, len(keys3)), errors.NoErr, }, } @@ -227,7 +227,7 @@ func TestIBCCreatePacket(t *testing.T) { appHash := []byte{1, 2, 3, 4} start := 100 // initial height chainID := "cosmos-hub" - root := genEmptySeed(keys, chainID, start, appHash, len(keys)) + root := genEmptyCommit(keys, chainID, start, appHash, len(keys)) // create the app and register the root of trust (for chain-1) ctx := stack.MockContext("hub", 50) diff --git a/modules/ibc/provider.go b/modules/ibc/provider.go index e308eb79d4..7dc2302fee 100644 --- a/modules/ibc/provider.go +++ b/modules/ibc/provider.go @@ -17,11 +17,11 @@ const ( // newCertifier loads up the current state of this chain to make a proper certifier // it will load the most recent height before block h if h is positive // if h < 0, it will load the latest height -func newCertifier(store state.SimpleDB, chainID string, h int) (*certifiers.InquiringCertifier, error) { +func newCertifier(store state.SimpleDB, chainID string, h int) (*certifiers.Inquiring, error) { // each chain has their own prefixed subspace p := newDBProvider(store) - var seed certifiers.Seed + var seed certifiers.FullCommit var err error if h > 0 { // this gets the most recent verified seed below the specified height @@ -55,7 +55,7 @@ func newDBProvider(store state.SimpleDB) *dbProvider { var _ certifiers.Provider = &dbProvider{} -func (d *dbProvider) StoreSeed(seed certifiers.Seed) error { +func (d *dbProvider) StoreSeed(seed certifiers.FullCommit) error { // TODO: don't duplicate data.... b := wire.BinaryBytes(seed) d.byHash.Set(seed.Hash(), b) @@ -63,7 +63,7 @@ func (d *dbProvider) StoreSeed(seed certifiers.Seed) error { return nil } -func (d *dbProvider) GetByHeight(h int) (seed certifiers.Seed, err error) { +func (d *dbProvider) GetByHeight(h int) (seed certifiers.FullCommit, err error) { b, _ := d.byHeight.LTE(uint64(h)) if b == nil { return seed, certifiers.ErrSeedNotFound() @@ -72,7 +72,7 @@ func (d *dbProvider) GetByHeight(h int) (seed certifiers.Seed, err error) { return } -func (d *dbProvider) GetByHash(hash []byte) (seed certifiers.Seed, err error) { +func (d *dbProvider) GetByHash(hash []byte) (seed certifiers.FullCommit, err error) { b := d.byHash.Get(hash) if b == nil { return seed, certifiers.ErrSeedNotFound() @@ -83,7 +83,7 @@ func (d *dbProvider) GetByHash(hash []byte) (seed certifiers.Seed, err error) { // GetExactHeight is like GetByHeight, but returns an error instead of // closest match if there is no exact match -func (d *dbProvider) GetExactHeight(h int) (seed certifiers.Seed, err error) { +func (d *dbProvider) GetExactHeight(h int) (seed certifiers.FullCommit, err error) { seed, err = d.GetByHeight(h) if err != nil { return diff --git a/modules/ibc/provider_test.go b/modules/ibc/provider_test.go index 96d0ad0ae1..59d573e456 100644 --- a/modules/ibc/provider_test.go +++ b/modules/ibc/provider_test.go @@ -10,7 +10,7 @@ import ( "github.com/tendermint/light-client/certifiers" ) -func assertSeedEqual(t *testing.T, s, s2 certifiers.Seed) { +func assertSeedEqual(t *testing.T, s, s2 certifiers.FullCommit) { assert := assert.New(t) assert.Equal(s.Height(), s2.Height()) assert.Equal(s.Hash(), s2.Hash()) @@ -75,16 +75,16 @@ func TestDBProvider(t *testing.T) { checkProvider(t, p, "test-db", "bling") } -func makeSeeds(keys certifiers.ValKeys, count int, chainID, app string) []certifiers.Seed { +func makeSeeds(keys certifiers.ValKeys, count int, chainID, app string) []certifiers.FullCommit { appHash := []byte(app) - seeds := make([]certifiers.Seed, count) + seeds := make([]certifiers.FullCommit, count) for i := 0; i < count; i++ { // two seeds for each validator, to check how we handle dups // (10, 0), (10, 1), (10, 1), (10, 2), (10, 2), ... vals := keys.ToValidators(10, int64(count/2)) h := 20 + 10*i check := keys.GenCheckpoint(chainID, h, nil, vals, appHash, 0, len(keys)) - seeds[i] = certifiers.Seed{check, vals} + seeds[i] = certifiers.FullCommit{check, vals} } return seeds } diff --git a/modules/ibc/test_helpers.go b/modules/ibc/test_helpers.go index 6f0a9bda06..9166a9ab92 100644 --- a/modules/ibc/test_helpers.go +++ b/modules/ibc/test_helpers.go @@ -32,7 +32,7 @@ func NewMockChain(chainID string, numKeys int) MockChain { // GetRegistrationTx returns a valid tx to register this chain func (m MockChain) GetRegistrationTx(h int) RegisterChainTx { - seed := genEmptySeed(m.keys, m.chainID, h, m.tree.Hash(), len(m.keys)) + seed := genEmptyCommit(m.keys, m.chainID, h, m.tree.Hash(), len(m.keys)) return RegisterChainTx{seed} } @@ -42,18 +42,17 @@ func (m MockChain) MakePostPacket(packet Packet, h int) ( PostPacketTx, UpdateChainTx) { post := makePostPacket(m.tree, packet, m.chainID, h) - seed := genEmptySeed(m.keys, m.chainID, h+1, m.tree.Hash(), len(m.keys)) + seed := genEmptyCommit(m.keys, m.chainID, h+1, m.tree.Hash(), len(m.keys)) update := UpdateChainTx{seed} return post, update } -func genEmptySeed(keys certifiers.ValKeys, chain string, h int, - appHash []byte, count int) certifiers.Seed { +func genEmptyCommit(keys certifiers.ValKeys, chain string, h int, + appHash []byte, count int) certifiers.FullCommit { vals := keys.ToValidators(10, 0) - cp := keys.GenCheckpoint(chain, h, nil, vals, appHash, 0, count) - return certifiers.Seed{cp, vals} + return keys.GenFullCommit(chain, h, nil, vals, appHash, 0, count) } func makePostPacket(tree *iavl.Tree, packet Packet, fromID string, fromHeight int) PostPacketTx { diff --git a/modules/ibc/tx.go b/modules/ibc/tx.go index c2dc9ec835..83eb17eb37 100644 --- a/modules/ibc/tx.go +++ b/modules/ibc/tx.go @@ -32,7 +32,7 @@ func init() { // RegisterChainTx allows you to register a new chain on this blockchain type RegisterChainTx struct { - Seed certifiers.Seed `json:"seed"` + Seed certifiers.FullCommit `json:"seed"` } // ChainID helps get the chain this tx refers to @@ -56,7 +56,7 @@ func (r RegisterChainTx) Wrap() sdk.Tx { // UpdateChainTx updates the state of this chain type UpdateChainTx struct { - Seed certifiers.Seed `json:"seed"` + Seed certifiers.FullCommit `json:"seed"` } // ChainID helps get the chain this tx refers to