github.com/cosmos/cosmos-sdk@v0.50.10/types/context_bench_test.go (about)

     1  package types_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"cosmossdk.io/store/types"
     7  
     8  	"github.com/cosmos/cosmos-sdk/testutil"
     9  )
    10  
    11  func BenchmarkContext_KVStore(b *testing.B) {
    12  	key := types.NewKVStoreKey(b.Name() + "_TestCacheContext")
    13  
    14  	ctx := testutil.DefaultContext(key, types.NewTransientStoreKey("transient_"+b.Name()))
    15  
    16  	b.ResetTimer()
    17  	for i := 0; i < b.N; i++ {
    18  		_ = ctx.KVStore(key)
    19  	}
    20  }
    21  
    22  func BenchmarkContext_TransientStore(b *testing.B) {
    23  	key := types.NewKVStoreKey(b.Name() + "_TestCacheContext")
    24  
    25  	ctx := testutil.DefaultContext(key, types.NewTransientStoreKey("transient_"+b.Name()))
    26  
    27  	b.ResetTimer()
    28  	for i := 0; i < b.N; i++ {
    29  		_ = ctx.TransientStore(key)
    30  	}
    31  }
    32  
    33  func BenchmarkContext_CacheContext(b *testing.B) {
    34  	key := types.NewKVStoreKey(b.Name() + "_TestCacheContext")
    35  
    36  	ctx := testutil.DefaultContext(key, types.NewTransientStoreKey("transient_"+b.Name()))
    37  
    38  	b.ResetTimer()
    39  	for i := 0; i < b.N; i++ {
    40  		_, _ = ctx.CacheContext()
    41  	}
    42  }