Skip to content

Commit cf7be51

Browse files
committed
test: always free builders, selectors and rewriters
1 parent dfee7be commit cf7be51

File tree

1 file changed

+10
-11
lines changed

1 file changed

+10
-11
lines changed

benchmark_test.go

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -249,24 +249,19 @@ func BenchmarkNewWriter(b *testing.B) {
249249
// This benchmark aims to find out the extent of its impact.
250250
func BenchmarkNewRewriterBuilder(b *testing.B) {
251251
b.Run("Builder", func(b *testing.B) {
252-
for i := 0; i < b.N; i++ {
253-
_ = lolhtml.NewRewriterBuilder()
254-
}
255-
})
256-
b.Run("BuilderWithFree", func(b *testing.B) {
257252
for i := 0; i < b.N; i++ {
258253
rb := lolhtml.NewRewriterBuilder()
259254
rb.Free()
260255
}
261256
})
262-
b.Run("BuilderWithEmptyDocumentHandlerAndFree", func(b *testing.B) {
257+
b.Run("BuilderWithEmptyDocumentHandler", func(b *testing.B) {
263258
for i := 0; i < b.N; i++ {
264259
rb := lolhtml.NewRewriterBuilder()
265260
rb.AddDocumentContentHandlers(nil, nil, nil, nil)
266261
rb.Free()
267262
}
268263
})
269-
b.Run("BuilderWithEmptyElementHandlerAndFree", func(b *testing.B) {
264+
b.Run("BuilderWithEmptyElementHandler", func(b *testing.B) {
270265
for i := 0; i < b.N; i++ {
271266
rb := lolhtml.NewRewriterBuilder()
272267
s, _ := lolhtml.NewSelector("*")
@@ -275,7 +270,7 @@ func BenchmarkNewRewriterBuilder(b *testing.B) {
275270
s.Free()
276271
}
277272
})
278-
b.Run("BuilderWithElementHandlerAndFree", func(b *testing.B) {
273+
b.Run("BuilderWithElementHandler", func(b *testing.B) {
279274
for i := 0; i < b.N; i++ {
280275
rb := lolhtml.NewRewriterBuilder()
281276
s, _ := lolhtml.NewSelector("*")
@@ -289,7 +284,7 @@ func BenchmarkNewRewriterBuilder(b *testing.B) {
289284
s.Free()
290285
}
291286
})
292-
b.Run("BuilderWithElementHandlerAndBuildAndFree", func(b *testing.B) {
287+
b.Run("BuilderWithElementHandlerAndBuild", func(b *testing.B) {
293288
for i := 0; i < b.N; i++ {
294289
rb := lolhtml.NewRewriterBuilder()
295290
s, _ := lolhtml.NewSelector("*")
@@ -299,7 +294,8 @@ func BenchmarkNewRewriterBuilder(b *testing.B) {
299294
nil,
300295
nil,
301296
)
302-
_, _ = rb.Build(func([]byte) {}, lolhtml.NewDefaultConfig())
297+
r, _ := rb.Build(func([]byte) {}, lolhtml.NewDefaultConfig())
298+
r.Free()
303299
rb.Free()
304300
s.Free()
305301
}
@@ -316,14 +312,16 @@ func BenchmarkNewRewriterBuilder(b *testing.B) {
316312
b.ResetTimer()
317313
for i := 0; i < b.N; i++ {
318314
_, _ = rb.Build(func([]byte) {}, lolhtml.NewDefaultConfig())
315+
//r.Free() // TODO: fix
319316
}
320317
b.StopTimer()
321318
rb.Free()
322319
s.Free()
323320
})
324321
b.Run("Writer", func(b *testing.B) {
325322
for i := 0; i < b.N; i++ {
326-
_, _ = lolhtml.NewWriter(nil,
323+
r, _ := lolhtml.NewWriter(
324+
nil,
327325
&lolhtml.Handlers{
328326
ElementContentHandler: []lolhtml.ElementContentHandler{
329327
{
@@ -335,6 +333,7 @@ func BenchmarkNewRewriterBuilder(b *testing.B) {
335333
},
336334
},
337335
)
336+
r.Free()
338337
}
339338
})
340339
}

0 commit comments

Comments
 (0)