123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- package goquery
- import (
- "testing"
- )
- func BenchmarkFirst(b *testing.B) {
- b.StopTimer()
- sel := DocB().Find("dd")
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.First()
- }
- }
- func BenchmarkLast(b *testing.B) {
- b.StopTimer()
- sel := DocB().Find("dd")
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Last()
- }
- }
- func BenchmarkEq(b *testing.B) {
- b.StopTimer()
- sel := DocB().Find("dd")
- j := 0
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Eq(j)
- if j++; j >= sel.Length() {
- j = 0
- }
- }
- }
- func BenchmarkSlice(b *testing.B) {
- b.StopTimer()
- sel := DocB().Find("dd")
- j := 0
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Slice(j, j+4)
- if j++; j >= (sel.Length() - 4) {
- j = 0
- }
- }
- }
- func BenchmarkGet(b *testing.B) {
- b.StopTimer()
- sel := DocB().Find("dd")
- j := 0
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- sel.Get(j)
- if j++; j >= sel.Length() {
- j = 0
- }
- }
- }
- func BenchmarkIndex(b *testing.B) {
- var j int
- b.StopTimer()
- sel := DocB().Find("#Main")
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- j = sel.Index()
- }
- if j != 3 {
- b.Fatalf("want 3, got %d", j)
- }
- }
- func BenchmarkIndexSelector(b *testing.B) {
- var j int
- b.StopTimer()
- sel := DocB().Find("#manual-nav dl dd:nth-child(1)")
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- j = sel.IndexSelector("dd")
- }
- if j != 4 {
- b.Fatalf("want 4, got %d", j)
- }
- }
- func BenchmarkIndexOfNode(b *testing.B) {
- var j int
- b.StopTimer()
- sel := DocB().Find("span a")
- sel2 := DocB().Find("span a:nth-child(3)")
- n := sel2.Get(0)
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- j = sel.IndexOfNode(n)
- }
- if j != 2 {
- b.Fatalf("want 2, got %d", j)
- }
- }
- func BenchmarkIndexOfSelection(b *testing.B) {
- var j int
- b.StopTimer()
- sel := DocB().Find("span a")
- sel2 := DocB().Find("span a:nth-child(3)")
- b.StartTimer()
- for i := 0; i < b.N; i++ {
- j = sel.IndexOfSelection(sel2)
- }
- if j != 2 {
- b.Fatalf("want 2, got %d", j)
- }
- }
|