summaryrefslogtreecommitdiff
path: root/t/07count.t
diff options
context:
space:
mode:
Diffstat (limited to 't/07count.t')
-rw-r--r--t/07count.t27
1 files changed, 27 insertions, 0 deletions
diff --git a/t/07count.t b/t/07count.t
new file mode 100644
index 0000000..6c0cae9
--- /dev/null
+++ b/t/07count.t
@@ -0,0 +1,27 @@
+use Test;
+BEGIN { plan tests => 7 }
+
+use XML::XPath;
+ok(1);
+
+my $xp = XML::XPath->new(ioref => *DATA);
+ok($xp);
+
+my @nodes;
+@nodes = $xp->findnodes('//*[count(BBB) = 2]');
+ok($nodes[0]->getName, "DDD");
+
+@nodes = $xp->findnodes('//*[count(*) = 2]');
+ok(@nodes, 2);
+
+@nodes = $xp->findnodes('//*[count(*) = 3]');
+ok(@nodes, 2);
+ok($nodes[0]->getName, "AAA");
+ok($nodes[1]->getName, "CCC");
+
+__DATA__
+<AAA>
+<CCC><BBB/><BBB/><BBB/></CCC>
+<DDD><BBB/><BBB/></DDD>
+<EEE><CCC/><DDD/></EEE>
+</AAA>