@@ -207,39 +207,51 @@ func TestInfiniteRecursion(t *testing.T) {
207
207
}
208
208
209
209
func BenchmarkParse (b * testing.B ) {
210
- filename := "safe1.jar"
211
- p := testdataPath (filename )
212
- zr , _ , err := OpenReader (p )
213
- if err != nil {
214
- b .Fatalf ("zip.OpenReader failed: %v" , err )
215
- }
216
- defer zr .Close ()
217
- b .ReportAllocs ()
218
- for i := 0 ; i < b .N ; i ++ {
219
- _ , err := Parse (& zr .Reader )
220
- if err != nil {
221
- b .Errorf ("Scan() returned an unexpected error, got %v, want nil" , err )
222
- }
210
+ for _ , filename := range [... ]string {
211
+ "400mb_jar_in_jar.jar" ,
212
+ "safe1.jar" ,
213
+ } {
214
+ b .Run (filename , func (b * testing.B ) {
215
+ p := testdataPath (filename )
216
+ zr , _ , err := OpenReader (p )
217
+ if err != nil {
218
+ b .Fatalf ("zip.OpenReader failed: %v" , err )
219
+ }
220
+ defer zr .Close ()
221
+ b .ReportAllocs ()
222
+ for i := 0 ; i < b .N ; i ++ {
223
+ _ , err := Parse (& zr .Reader )
224
+ if err != nil {
225
+ b .Errorf ("Scan() returned an unexpected error, got %v, want nil" , err )
226
+ }
227
+ }
228
+ })
223
229
}
224
230
}
225
231
226
232
func BenchmarkParseParallel (b * testing.B ) {
227
- filename := "safe1.jar"
228
- p := testdataPath (filename )
229
- b .ReportAllocs ()
230
- b .RunParallel (func (pb * testing.PB ) {
231
- zr , _ , err := OpenReader (p )
232
- if err != nil {
233
- b .Fatalf ("zip.OpenReader failed: %v" , err )
234
- }
235
- defer zr .Close ()
236
- for pb .Next () {
237
- _ , err := Parse (& zr .Reader )
238
- if err != nil {
239
- b .Errorf ("Scan() returned an unexpected error, got %v, want nil" , err )
240
- }
241
- }
242
- })
233
+ for _ , filename := range [... ]string {
234
+ "400mb_jar_in_jar.jar" ,
235
+ "safe1.jar" ,
236
+ } {
237
+ b .Run (filename , func (b * testing.B ) {
238
+ p := testdataPath (filename )
239
+ b .ReportAllocs ()
240
+ b .RunParallel (func (pb * testing.PB ) {
241
+ zr , _ , err := OpenReader (p )
242
+ if err != nil {
243
+ b .Fatalf ("zip.OpenReader failed: %v" , err )
244
+ }
245
+ defer zr .Close ()
246
+ for pb .Next () {
247
+ _ , err := Parse (& zr .Reader )
248
+ if err != nil {
249
+ b .Errorf ("Scan() returned an unexpected error, got %v, want nil" , err )
250
+ }
251
+ }
252
+ })
253
+ })
254
+ }
243
255
}
244
256
245
257
func TestLog4jPattern (t * testing.T ) {
0 commit comments