112 lines
1.8 KiB
Go
112 lines
1.8 KiB
Go
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()
|
|
}
|
|
b.Logf("Index=%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")
|
|
}
|
|
b.Logf("IndexSelector=%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)
|
|
}
|
|
b.Logf("IndexOfNode=%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)
|
|
}
|
|
b.Logf("IndexOfSelection=%d", j)
|
|
}
|