github.com/prysmaticlabs/prysm@v1.4.4/beacon-chain/core/state/trailing_slot_state_cache_test.go (about) 1 package state_test 2 3 import ( 4 "context" 5 "testing" 6 7 types "github.com/prysmaticlabs/eth2-types" 8 "github.com/prysmaticlabs/prysm/beacon-chain/core/state" 9 "github.com/prysmaticlabs/prysm/shared/testutil" 10 "github.com/prysmaticlabs/prysm/shared/testutil/require" 11 ) 12 13 func TestTrailingSlotState_RoundTrip(t *testing.T) { 14 ctx := context.Background() 15 r := []byte{'a'} 16 s, err := state.NextSlotState(ctx, r) 17 require.NoError(t, err) 18 require.Equal(t, nil, s) 19 20 s, _ = testutil.DeterministicGenesisState(t, 1) 21 require.NoError(t, state.UpdateNextSlotCache(ctx, r, s)) 22 s, err = state.NextSlotState(ctx, r) 23 require.NoError(t, err) 24 require.Equal(t, types.Slot(1), s.Slot()) 25 26 require.NoError(t, state.UpdateNextSlotCache(ctx, r, s)) 27 s, err = state.NextSlotState(ctx, r) 28 require.NoError(t, err) 29 require.Equal(t, types.Slot(2), s.Slot()) 30 }