aboutsummaryrefslogtreecommitdiffhomepage
path: root/vendor/github.com/PuerkitoBio/goquery/expand_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/PuerkitoBio/goquery/expand_test.go')
-rw-r--r--vendor/github.com/PuerkitoBio/goquery/expand_test.go96
1 files changed, 96 insertions, 0 deletions
diff --git a/vendor/github.com/PuerkitoBio/goquery/expand_test.go b/vendor/github.com/PuerkitoBio/goquery/expand_test.go
new file mode 100644
index 0000000..4557025
--- /dev/null
+++ b/vendor/github.com/PuerkitoBio/goquery/expand_test.go
@@ -0,0 +1,96 @@
+package goquery
+
+import (
+ "testing"
+)
+
+func TestAdd(t *testing.T) {
+ sel := Doc().Find("div.row-fluid").Add("a")
+ assertLength(t, sel.Nodes, 19)
+}
+
+func TestAddInvalid(t *testing.T) {
+ sel1 := Doc().Find("div.row-fluid")
+ sel2 := sel1.Add("")
+ assertLength(t, sel1.Nodes, 9)
+ assertLength(t, sel2.Nodes, 9)
+ if sel1 == sel2 {
+ t.Errorf("selections should not be the same")
+ }
+}
+
+func TestAddRollback(t *testing.T) {
+ sel := Doc().Find(".pvk-content")
+ sel2 := sel.Add("a").End()
+ assertEqual(t, sel, sel2)
+}
+
+func TestAddSelection(t *testing.T) {
+ sel := Doc().Find("div.row-fluid")
+ sel2 := Doc().Find("a")
+ sel = sel.AddSelection(sel2)
+ assertLength(t, sel.Nodes, 19)
+}
+
+func TestAddSelectionNil(t *testing.T) {
+ sel := Doc().Find("div.row-fluid")
+ assertLength(t, sel.Nodes, 9)
+
+ sel = sel.AddSelection(nil)
+ assertLength(t, sel.Nodes, 9)
+}
+
+func TestAddSelectionRollback(t *testing.T) {
+ sel := Doc().Find(".pvk-content")
+ sel2 := sel.Find("a")
+ sel2 = sel.AddSelection(sel2).End()
+ assertEqual(t, sel, sel2)
+}
+
+func TestAddNodes(t *testing.T) {
+ sel := Doc().Find("div.pvk-gutter")
+ sel2 := Doc().Find(".pvk-content")
+ sel = sel.AddNodes(sel2.Nodes...)
+ assertLength(t, sel.Nodes, 9)
+}
+
+func TestAddNodesNone(t *testing.T) {
+ sel := Doc().Find("div.pvk-gutter").AddNodes()
+ assertLength(t, sel.Nodes, 6)
+}
+
+func TestAddNodesRollback(t *testing.T) {
+ sel := Doc().Find(".pvk-content")
+ sel2 := sel.Find("a")
+ sel2 = sel.AddNodes(sel2.Nodes...).End()
+ assertEqual(t, sel, sel2)
+}
+
+func TestAddNodesBig(t *testing.T) {
+ doc := DocW()
+ sel := doc.Find("li")
+ assertLength(t, sel.Nodes, 373)
+ sel2 := doc.Find("xyz")
+ assertLength(t, sel2.Nodes, 0)
+
+ nodes := sel.Nodes
+ sel2 = sel2.AddNodes(nodes...)
+ assertLength(t, sel2.Nodes, 373)
+ nodes2 := append(nodes, nodes...)
+ sel2 = sel2.End().AddNodes(nodes2...)
+ assertLength(t, sel2.Nodes, 373)
+ nodes3 := append(nodes2, nodes...)
+ sel2 = sel2.End().AddNodes(nodes3...)
+ assertLength(t, sel2.Nodes, 373)
+}
+
+func TestAndSelf(t *testing.T) {
+ sel := Doc().Find(".span12").Last().AndSelf()
+ assertLength(t, sel.Nodes, 2)
+}
+
+func TestAndSelfRollback(t *testing.T) {
+ sel := Doc().Find(".pvk-content")
+ sel2 := sel.Find("a").AndSelf().End().End()
+ assertEqual(t, sel, sel2)
+}