mirror of
https://github.com/miniflux/v2.git
synced 2025-07-02 16:38:37 +00:00
First commit
This commit is contained in:
commit
8ffb773f43
2121 changed files with 1118910 additions and 0 deletions
802
vendor/github.com/PuerkitoBio/goquery/bench_traversal_test.go
generated
vendored
Normal file
802
vendor/github.com/PuerkitoBio/goquery/bench_traversal_test.go
generated
vendored
Normal file
|
@ -0,0 +1,802 @@
|
|||
package goquery
|
||||
|
||||
import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func BenchmarkFind(b *testing.B) {
|
||||
var n int
|
||||
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = DocB().Find("dd").Length()
|
||||
|
||||
} else {
|
||||
DocB().Find("dd")
|
||||
}
|
||||
}
|
||||
if n != 41 {
|
||||
b.Fatalf("want 41, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkFindWithinSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("ul")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Find("a[class]").Length()
|
||||
} else {
|
||||
sel.Find("a[class]")
|
||||
}
|
||||
}
|
||||
if n != 39 {
|
||||
b.Fatalf("want 39, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkFindSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("ul")
|
||||
sel2 := DocW().Find("span")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.FindSelection(sel2).Length()
|
||||
} else {
|
||||
sel.FindSelection(sel2)
|
||||
}
|
||||
}
|
||||
if n != 73 {
|
||||
b.Fatalf("want 73, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkFindNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("ul")
|
||||
sel2 := DocW().Find("span")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.FindNodes(nodes...).Length()
|
||||
} else {
|
||||
sel.FindNodes(nodes...)
|
||||
}
|
||||
}
|
||||
if n != 73 {
|
||||
b.Fatalf("want 73, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkContents(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-1")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Contents().Length()
|
||||
} else {
|
||||
sel.Contents()
|
||||
}
|
||||
}
|
||||
if n != 16 {
|
||||
b.Fatalf("want 16, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkContentsFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-1")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ContentsFiltered("a[href=\"#Examples\"]").Length()
|
||||
} else {
|
||||
sel.ContentsFiltered("a[href=\"#Examples\"]")
|
||||
}
|
||||
}
|
||||
if n != 1 {
|
||||
b.Fatalf("want 1, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkChildren(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-2")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Children().Length()
|
||||
} else {
|
||||
sel.Children()
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkChildrenFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h3")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ChildrenFiltered(".editsection").Length()
|
||||
} else {
|
||||
sel.ChildrenFiltered(".editsection")
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParent(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Parent().Length()
|
||||
} else {
|
||||
sel.Parent()
|
||||
}
|
||||
}
|
||||
if n != 55 {
|
||||
b.Fatalf("want 55, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentFiltered("ul[id]").Length()
|
||||
} else {
|
||||
sel.ParentFiltered("ul[id]")
|
||||
}
|
||||
}
|
||||
if n != 4 {
|
||||
b.Fatalf("want 4, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParents(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("th a")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Parents().Length()
|
||||
} else {
|
||||
sel.Parents()
|
||||
}
|
||||
}
|
||||
if n != 73 {
|
||||
b.Fatalf("want 73, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("th a")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsFiltered("tr").Length()
|
||||
} else {
|
||||
sel.ParentsFiltered("tr")
|
||||
}
|
||||
}
|
||||
if n != 18 {
|
||||
b.Fatalf("want 18, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("th a")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsUntil("table").Length()
|
||||
} else {
|
||||
sel.ParentsUntil("table")
|
||||
}
|
||||
}
|
||||
if n != 52 {
|
||||
b.Fatalf("want 52, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("th a")
|
||||
sel2 := DocW().Find("#content")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsUntilSelection(sel2).Length()
|
||||
} else {
|
||||
sel.ParentsUntilSelection(sel2)
|
||||
}
|
||||
}
|
||||
if n != 70 {
|
||||
b.Fatalf("want 70, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("th a")
|
||||
sel2 := DocW().Find("#content")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsUntilNodes(nodes...).Length()
|
||||
} else {
|
||||
sel.ParentsUntilNodes(nodes...)
|
||||
}
|
||||
}
|
||||
if n != 70 {
|
||||
b.Fatalf("want 70, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsFilteredUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-1 a")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsFilteredUntil(":nth-child(1)", "ul").Length()
|
||||
} else {
|
||||
sel.ParentsFilteredUntil(":nth-child(1)", "ul")
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsFilteredUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-1 a")
|
||||
sel2 := DocW().Find("ul")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsFilteredUntilSelection(":nth-child(1)", sel2).Length()
|
||||
} else {
|
||||
sel.ParentsFilteredUntilSelection(":nth-child(1)", sel2)
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkParentsFilteredUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find(".toclevel-1 a")
|
||||
sel2 := DocW().Find("ul")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ParentsFilteredUntilNodes(":nth-child(1)", nodes...).Length()
|
||||
} else {
|
||||
sel.ParentsFilteredUntilNodes(":nth-child(1)", nodes...)
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkSiblings(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("ul li:nth-child(1)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Siblings().Length()
|
||||
} else {
|
||||
sel.Siblings()
|
||||
}
|
||||
}
|
||||
if n != 293 {
|
||||
b.Fatalf("want 293, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkSiblingsFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("ul li:nth-child(1)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.SiblingsFiltered("[class]").Length()
|
||||
} else {
|
||||
sel.SiblingsFiltered("[class]")
|
||||
}
|
||||
}
|
||||
if n != 46 {
|
||||
b.Fatalf("want 46, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNext(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(1)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Next().Length()
|
||||
} else {
|
||||
sel.Next()
|
||||
}
|
||||
}
|
||||
if n != 49 {
|
||||
b.Fatalf("want 49, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(1)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextFiltered("[class]").Length()
|
||||
} else {
|
||||
sel.NextFiltered("[class]")
|
||||
}
|
||||
}
|
||||
if n != 6 {
|
||||
b.Fatalf("want 6, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextAll(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(3)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextAll().Length()
|
||||
} else {
|
||||
sel.NextAll()
|
||||
}
|
||||
}
|
||||
if n != 234 {
|
||||
b.Fatalf("want 234, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextAllFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(3)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextAllFiltered("[class]").Length()
|
||||
} else {
|
||||
sel.NextAllFiltered("[class]")
|
||||
}
|
||||
}
|
||||
if n != 33 {
|
||||
b.Fatalf("want 33, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrev(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:last-child")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Prev().Length()
|
||||
} else {
|
||||
sel.Prev()
|
||||
}
|
||||
}
|
||||
if n != 49 {
|
||||
b.Fatalf("want 49, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:last-child")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevFiltered("[class]").Length()
|
||||
} else {
|
||||
sel.PrevFiltered("[class]")
|
||||
}
|
||||
}
|
||||
// There is one more Prev li with a class, compared to Next li with a class
|
||||
// (confirmed by looking at the HTML, this is ok)
|
||||
if n != 7 {
|
||||
b.Fatalf("want 7, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevAll(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(4)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevAll().Length()
|
||||
} else {
|
||||
sel.PrevAll()
|
||||
}
|
||||
}
|
||||
if n != 78 {
|
||||
b.Fatalf("want 78, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevAllFiltered(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:nth-child(4)")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevAllFiltered("[class]").Length()
|
||||
} else {
|
||||
sel.PrevAllFiltered("[class]")
|
||||
}
|
||||
}
|
||||
if n != 6 {
|
||||
b.Fatalf("want 6, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:first-child")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextUntil(":nth-child(4)").Length()
|
||||
} else {
|
||||
sel.NextUntil(":nth-child(4)")
|
||||
}
|
||||
}
|
||||
if n != 84 {
|
||||
b.Fatalf("want 84, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("ul")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextUntilSelection(sel2).Length()
|
||||
} else {
|
||||
sel.NextUntilSelection(sel2)
|
||||
}
|
||||
}
|
||||
if n != 42 {
|
||||
b.Fatalf("want 42, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("p")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextUntilNodes(nodes...).Length()
|
||||
} else {
|
||||
sel.NextUntilNodes(nodes...)
|
||||
}
|
||||
}
|
||||
if n != 12 {
|
||||
b.Fatalf("want 12, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("li:last-child")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevUntil(":nth-child(4)").Length()
|
||||
} else {
|
||||
sel.PrevUntil(":nth-child(4)")
|
||||
}
|
||||
}
|
||||
if n != 238 {
|
||||
b.Fatalf("want 238, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("ul")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevUntilSelection(sel2).Length()
|
||||
} else {
|
||||
sel.PrevUntilSelection(sel2)
|
||||
}
|
||||
}
|
||||
if n != 49 {
|
||||
b.Fatalf("want 49, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("p")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevUntilNodes(nodes...).Length()
|
||||
} else {
|
||||
sel.PrevUntilNodes(nodes...)
|
||||
}
|
||||
}
|
||||
if n != 11 {
|
||||
b.Fatalf("want 11, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextFilteredUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextFilteredUntil("p", "div").Length()
|
||||
} else {
|
||||
sel.NextFilteredUntil("p", "div")
|
||||
}
|
||||
}
|
||||
if n != 22 {
|
||||
b.Fatalf("want 22, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextFilteredUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("div")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextFilteredUntilSelection("p", sel2).Length()
|
||||
} else {
|
||||
sel.NextFilteredUntilSelection("p", sel2)
|
||||
}
|
||||
}
|
||||
if n != 22 {
|
||||
b.Fatalf("want 22, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkNextFilteredUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("div")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.NextFilteredUntilNodes("p", nodes...).Length()
|
||||
} else {
|
||||
sel.NextFilteredUntilNodes("p", nodes...)
|
||||
}
|
||||
}
|
||||
if n != 22 {
|
||||
b.Fatalf("want 22, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevFilteredUntil(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevFilteredUntil("p", "div").Length()
|
||||
} else {
|
||||
sel.PrevFilteredUntil("p", "div")
|
||||
}
|
||||
}
|
||||
if n != 20 {
|
||||
b.Fatalf("want 20, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevFilteredUntilSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("div")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevFilteredUntilSelection("p", sel2).Length()
|
||||
} else {
|
||||
sel.PrevFilteredUntilSelection("p", sel2)
|
||||
}
|
||||
}
|
||||
if n != 20 {
|
||||
b.Fatalf("want 20, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkPrevFilteredUntilNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := DocW().Find("h2")
|
||||
sel2 := DocW().Find("div")
|
||||
nodes := sel2.Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.PrevFilteredUntilNodes("p", nodes...).Length()
|
||||
} else {
|
||||
sel.PrevFilteredUntilNodes("p", nodes...)
|
||||
}
|
||||
}
|
||||
if n != 20 {
|
||||
b.Fatalf("want 20, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkClosest(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := Doc().Find(".container-fluid")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.Closest(".pvk-content").Length()
|
||||
} else {
|
||||
sel.Closest(".pvk-content")
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkClosestSelection(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := Doc().Find(".container-fluid")
|
||||
sel2 := Doc().Find(".pvk-content")
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ClosestSelection(sel2).Length()
|
||||
} else {
|
||||
sel.ClosestSelection(sel2)
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkClosestNodes(b *testing.B) {
|
||||
var n int
|
||||
|
||||
b.StopTimer()
|
||||
sel := Doc().Find(".container-fluid")
|
||||
nodes := Doc().Find(".pvk-content").Nodes
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
if n == 0 {
|
||||
n = sel.ClosestNodes(nodes...).Length()
|
||||
} else {
|
||||
sel.ClosestNodes(nodes...)
|
||||
}
|
||||
}
|
||||
if n != 2 {
|
||||
b.Fatalf("want 2, got %d", n)
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue