github.com/Finschia/finschia-sdk@v0.49.1/store/mem/mem_test.go (about) 1 package mem_test 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7 8 "github.com/Finschia/finschia-sdk/store/cachekv" 9 "github.com/Finschia/finschia-sdk/store/mem" 10 "github.com/Finschia/finschia-sdk/store/types" 11 ) 12 13 func TestStore(t *testing.T) { 14 db := mem.NewStore() 15 key, value := []byte("key"), []byte("value") 16 17 require.Equal(t, types.StoreTypeMemory, db.GetStoreType()) 18 19 require.Nil(t, db.Get(key)) 20 db.Set(key, value) 21 require.Equal(t, value, db.Get(key)) 22 23 newValue := []byte("newValue") 24 db.Set(key, newValue) 25 require.Equal(t, newValue, db.Get(key)) 26 27 db.Delete(key) 28 require.Nil(t, db.Get(key)) 29 30 cacheWrapper := db.CacheWrap() 31 require.IsType(t, &cachekv.Store{}, cacheWrapper) 32 33 cacheWrappedWithTrace := db.CacheWrapWithTrace(nil, nil) 34 require.IsType(t, &cachekv.Store{}, cacheWrappedWithTrace) 35 36 cacheWrappedWithListeners := db.CacheWrapWithListeners(nil, nil) 37 require.IsType(t, &cachekv.Store{}, cacheWrappedWithListeners) 38 } 39 40 func TestCommit(t *testing.T) { 41 db := mem.NewStore() 42 key, value := []byte("key"), []byte("value") 43 44 db.Set(key, value) 45 id := db.Commit() 46 require.True(t, id.IsZero()) 47 require.True(t, db.LastCommitID().IsZero()) 48 require.Equal(t, value, db.Get(key)) 49 }