git.frostfs.info/TrueCloudLab/frostfs-sdk-go@v0.0.0-20241022124111-5361f0ecebd3/pool/cache_test.go (about) 1 package pool 2 3 import ( 4 "testing" 5 6 "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/session" 7 sessiontest "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/session/test" 8 "github.com/nspcc-dev/neo-go/pkg/crypto/keys" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestSessionCache_GetUnmodifiedToken(t *testing.T) { 13 const key = "Foo" 14 target := *sessiontest.Object() 15 16 pk, err := keys.NewPrivateKey() 17 require.NoError(t, err) 18 19 check := func(t *testing.T, tok session.Object, extra string) { 20 require.False(t, tok.VerifySignature(), extra) 21 } 22 23 cache, err := newCache(0) 24 require.NoError(t, err) 25 26 cache.Put(key, target) 27 value, ok := cache.Get(key) 28 require.True(t, ok) 29 check(t, value, "before sign") 30 31 err = value.Sign(pk.PrivateKey) 32 require.NoError(t, err) 33 34 value, ok = cache.Get(key) 35 require.True(t, ok) 36 check(t, value, "after sign") 37 }