diff options
author | 2017-11-19 21:10:04 -0800 | |
---|---|---|
committer | 2017-11-19 22:01:46 -0800 | |
commit | 8ffb773f43c8dc54801ca1d111854e7e881c93c9 (patch) | |
tree | 38133a2fc612597a75fed1d13e5b4042f58a2b7e /vendor/github.com/PuerkitoBio/goquery/bench_array_test.go |
First commit
Diffstat (limited to 'vendor/github.com/PuerkitoBio/goquery/bench_array_test.go')
-rw-r--r-- | vendor/github.com/PuerkitoBio/goquery/bench_array_test.go | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/vendor/github.com/PuerkitoBio/goquery/bench_array_test.go b/vendor/github.com/PuerkitoBio/goquery/bench_array_test.go new file mode 100644 index 0000000..29c7e20 --- /dev/null +++ b/vendor/github.com/PuerkitoBio/goquery/bench_array_test.go @@ -0,0 +1,120 @@ +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) + } +} |