1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- package goquery
- import (
- "testing"
- )
- func BenchmarkEach(b *testing.B) {
- var tmp, n int
- b.StopTimer()
- sel := DocW().Find("td")
- f := func(i int, s *Selection) {
- tmp++
- }
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Each(f)
- if n == 0 {
- n = tmp
- }
- }
- if n != 59 {
- b.Fatalf("want 59, got %d", n)
- }
- }
- func BenchmarkMap(b *testing.B) {
- var tmp, n int
- b.StopTimer()
- sel := DocW().Find("td")
- f := func(i int, s *Selection) string {
- tmp++
- return string(tmp)
- }
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Map(f)
- if n == 0 {
- n = tmp
- }
- }
- if n != 59 {
- b.Fatalf("want 59, got %d", n)
- }
- }
- func BenchmarkEachWithBreak(b *testing.B) {
- var tmp, n int
- b.StopTimer()
- sel := DocW().Find("td")
- f := func(i int, s *Selection) bool {
- tmp++
- return tmp < 10
- }
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- tmp = 0
- sel.EachWithBreak(f)
- if n == 0 {
- n = tmp
- }
- }
- if n != 10 {
- b.Fatalf("want 10, got %d", n)
- }
- }
|