7
7
"testing"
8
8
9
9
"github.com/pkg/errors"
10
+ fieldparams "github.com/prysmaticlabs/prysm/v4/config/fieldparams"
10
11
"github.com/prysmaticlabs/prysm/v4/config/params"
11
12
"github.com/prysmaticlabs/prysm/v4/consensus-types/primitives"
12
13
"github.com/prysmaticlabs/prysm/v4/encoding/bytesutil"
@@ -63,18 +64,18 @@ func TestStore_BlobSidecars(t *testing.T) {
63
64
})
64
65
t .Run ("save and retrieve by root (max)" , func (t * testing.T ) {
65
66
db := setupDB (t )
66
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
67
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
67
68
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
68
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
69
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
69
70
got , err := db .BlobSidecarsByRoot (ctx , bytesutil .ToBytes32 (scs [0 ].BlockRoot ))
70
71
require .NoError (t , err )
71
72
require .NoError (t , equalBlobSlices (scs , got ))
72
73
})
73
74
t .Run ("save and retrieve valid subset by root" , func (t * testing.T ) {
74
75
db := setupDB (t )
75
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
76
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
76
77
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
77
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
78
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
78
79
79
80
// we'll request indices 0 and 3, so make a slice with those indices for comparison
80
81
expect := make ([]* ethpb.BlobSidecar , 2 )
@@ -89,9 +90,9 @@ func TestStore_BlobSidecars(t *testing.T) {
89
90
})
90
91
t .Run ("error for invalid index when retrieving by root" , func (t * testing.T ) {
91
92
db := setupDB (t )
92
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
93
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
93
94
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
94
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
95
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
95
96
96
97
got , err := db .BlobSidecarsByRoot (ctx , bytesutil .ToBytes32 (scs [0 ].BlockRoot ), uint64 (len (scs )))
97
98
require .ErrorIs (t , err , ErrNotFound )
@@ -108,18 +109,18 @@ func TestStore_BlobSidecars(t *testing.T) {
108
109
})
109
110
t .Run ("save and retrieve by slot (max)" , func (t * testing.T ) {
110
111
db := setupDB (t )
111
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
112
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
112
113
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
113
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
114
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
114
115
got , err := db .BlobSidecarsBySlot (ctx , scs [0 ].Slot )
115
116
require .NoError (t , err )
116
117
require .NoError (t , equalBlobSlices (scs , got ))
117
118
})
118
119
t .Run ("save and retrieve valid subset by slot" , func (t * testing.T ) {
119
120
db := setupDB (t )
120
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
121
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
121
122
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
122
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
123
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
123
124
124
125
// we'll request indices 0 and 3, so make a slice with those indices for comparison
125
126
expect := make ([]* ethpb.BlobSidecar , 2 )
@@ -135,19 +136,19 @@ func TestStore_BlobSidecars(t *testing.T) {
135
136
})
136
137
t .Run ("error for invalid index when retrieving by slot" , func (t * testing.T ) {
137
138
db := setupDB (t )
138
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
139
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
139
140
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
140
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
141
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
141
142
142
143
got , err := db .BlobSidecarsBySlot (ctx , scs [0 ].Slot , uint64 (len (scs )))
143
144
require .ErrorIs (t , err , ErrNotFound )
144
145
require .Equal (t , 0 , len (got ))
145
146
})
146
147
t .Run ("delete works" , func (t * testing.T ) {
147
148
db := setupDB (t )
148
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
149
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
149
150
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
150
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
151
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
151
152
got , err := db .BlobSidecarsByRoot (ctx , bytesutil .ToBytes32 (scs [0 ].BlockRoot ))
152
153
require .NoError (t , err )
153
154
require .NoError (t , equalBlobSlices (scs , got ))
@@ -158,25 +159,25 @@ func TestStore_BlobSidecars(t *testing.T) {
158
159
})
159
160
t .Run ("saving a blob with older slot" , func (t * testing.T ) {
160
161
db := setupDB (t )
161
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
162
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
162
163
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
163
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
164
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
164
165
got , err := db .BlobSidecarsByRoot (ctx , bytesutil .ToBytes32 (scs [0 ].BlockRoot ))
165
166
require .NoError (t , err )
166
167
require .NoError (t , equalBlobSlices (scs , got ))
167
168
require .ErrorContains (t , "but already have older blob with slot" , db .SaveBlobSidecar (ctx , scs ))
168
169
})
169
170
t .Run ("saving a new blob for rotation" , func (t * testing.T ) {
170
171
db := setupDB (t )
171
- scs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
172
+ scs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
172
173
require .NoError (t , db .SaveBlobSidecar (ctx , scs ))
173
- require .Equal (t , int (params . BeaconConfig () .MaxBlobsPerBlock ), len (scs ))
174
+ require .Equal (t , int (fieldparams .MaxBlobsPerBlock ), len (scs ))
174
175
oldBlockRoot := scs [0 ].BlockRoot
175
176
got , err := db .BlobSidecarsByRoot (ctx , bytesutil .ToBytes32 (oldBlockRoot ))
176
177
require .NoError (t , err )
177
178
require .NoError (t , equalBlobSlices (scs , got ))
178
179
179
- newScs := generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock )
180
+ newScs := generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock )
180
181
newRetentionSlot := primitives .Slot (params .BeaconNetworkConfig ().MinEpochsForBlobsSidecarsRequest .Mul (uint64 (params .BeaconConfig ().SlotsPerEpoch )))
181
182
for _ , sc := range newScs {
182
183
sc .Slot = sc .Slot + newRetentionSlot
@@ -231,7 +232,7 @@ func TestStore_verifySideCars(t *testing.T) {
231
232
error string
232
233
}{
233
234
{name : "empty" , scs : []* ethpb.BlobSidecar {}, error : "nil or empty blob sidecars" },
234
- {name : "too many sidecars" , scs : generateBlobSidecars (t , params . BeaconConfig () .MaxBlobsPerBlock + 1 ), error : "too many sidecars: 5 > 4" },
235
+ {name : "too many sidecars" , scs : generateBlobSidecars (t , fieldparams .MaxBlobsPerBlock + 1 ), error : "too many sidecars: 5 > 4" },
235
236
{name : "invalid slot" , scs : []* ethpb.BlobSidecar {{Slot : 1 }, {Slot : 2 }}, error : "sidecar slot mismatch: 2 != 1" },
236
237
{name : "invalid proposer index" , scs : []* ethpb.BlobSidecar {{ProposerIndex : 1 }, {ProposerIndex : 2 }}, error : "sidecar proposer index mismatch: 2 != 1" },
237
238
{name : "invalid root" , scs : []* ethpb.BlobSidecar {{BlockRoot : []byte {1 }}, {BlockRoot : []byte {2 }}}, error : "sidecar root mismatch: 02 != 01" },
0 commit comments