package testkv import ( "bytes" "gotest.tools/v3/assert" "github.com/cosmos/cosmos-sdk/orm/model/ormtable" "github.com/cosmos/cosmos-sdk/orm/types/kv" ) func AssertBackendsEqual(t assert.TestingT, b1, b2 ormtable.Backend) { it1, err := b1.CommitmentStoreReader().Iterator(nil, nil) assert.NilError(t, err) it2, err := b2.CommitmentStoreReader().Iterator(nil, nil) assert.NilError(t, err) AssertIteratorsEqual(t, it1, it2) it1, err = b1.IndexStoreReader().Iterator(nil, nil) assert.NilError(t, err) it2, err = b2.IndexStoreReader().Iterator(nil, nil) assert.NilError(t, err) AssertIteratorsEqual(t, it1, it2) } func AssertIteratorsEqual(t assert.TestingT, it1, it2 kv.Iterator) { for it1.Valid() { assert.Assert(t, it2.Valid()) assert.Assert(t, bytes.Equal(it1.Key(), it2.Key())) assert.Assert(t, bytes.Equal(it1.Value(), it2.Value())) it1.Next() it2.Next() } }