diff options
author | Gianni Ceccarelli <dakkar@dechirico.(none)> | 2009-03-20 15:13:59 +0100 |
---|---|---|
committer | Gianni Ceccarelli <dakkar@dechirico.(none)> | 2009-03-20 15:13:59 +0100 |
commit | 92f310bf8712f12dbc3717b2529df4694a073310 (patch) | |
tree | 0fb10a2e6bd7a3919395a6b66a4b6a883e6bdf14 /t | |
parent | renaming merge (diff) | |
download | Tree-Transform-XSLTish-92f310bf8712f12dbc3717b2529df4694a073310.tar.gz Tree-Transform-XSLTish-92f310bf8712f12dbc3717b2529df4694a073310.tar.bz2 Tree-Transform-XSLTish-92f310bf8712f12dbc3717b2529df4694a073310.zip |
it's now possible to change the XPath engine for each transformer
added a test that uses XML::XPathEngine and HTML::TreeBuilder::XPath
Diffstat (limited to 't')
-rw-r--r-- | t/01-basic.t | 1 | ||||
-rw-r--r-- | t/02-inherit.t | 1 | ||||
-rw-r--r-- | t/03-byname.t | 1 | ||||
-rw-r--r-- | t/04-errors.t | 1 | ||||
-rw-r--r-- | t/05-html-tree.t | 38 |
5 files changed, 42 insertions, 0 deletions
diff --git a/t/01-basic.t b/t/01-basic.t index 7c622e8..a6670a5 100644 --- a/t/01-basic.t +++ b/t/01-basic.t @@ -38,6 +38,7 @@ use warnings; use Tree::DAG_Node::XPath; sub Tree::DAG_Node::XPath::Root::xpath_get_root_node { return $_[0] } +sub Tree::DAG_Node::XPath::Root::xpath_get_parent_node { return } my $tree=Tree::DAG_Node::XPath->new(); $tree->name('base'); diff --git a/t/02-inherit.t b/t/02-inherit.t index 1b1b90a..fb8e238 100644 --- a/t/02-inherit.t +++ b/t/02-inherit.t @@ -35,6 +35,7 @@ use warnings; use Tree::DAG_Node::XPath; sub Tree::DAG_Node::XPath::Root::xpath_get_root_node { return $_[0] } +sub Tree::DAG_Node::XPath::Root::xpath_get_parent_node { return } my $tree=Tree::DAG_Node::XPath->new(); $tree->name('base'); diff --git a/t/03-byname.t b/t/03-byname.t index 3c801fa..784138b 100644 --- a/t/03-byname.t +++ b/t/03-byname.t @@ -23,6 +23,7 @@ use warnings; use Tree::DAG_Node::XPath; sub Tree::DAG_Node::XPath::Root::xpath_get_root_node { return $_[0] } +sub Tree::DAG_Node::XPath::Root::xpath_get_parent_node { return } my $tree=Tree::DAG_Node::XPath->new(); $tree->name('base'); diff --git a/t/04-errors.t b/t/04-errors.t index 9e2903a..107c1bd 100644 --- a/t/04-errors.t +++ b/t/04-errors.t @@ -6,6 +6,7 @@ use warnings; use Tree::DAG_Node::XPath; sub Tree::DAG_Node::XPath::Root::xpath_get_root_node { return $_[0] } +sub Tree::DAG_Node::XPath::Root::xpath_get_parent_node { return } my $tree=Tree::DAG_Node::XPath->new(); $tree->name('base'); diff --git a/t/05-html-tree.t b/t/05-html-tree.t new file mode 100644 index 0000000..a562aba --- /dev/null +++ b/t/05-html-tree.t @@ -0,0 +1,38 @@ +#!perl +package HtmlTransform;{ + use Tree::Transform::XSLTish; + use strict; + use warnings; + + default_rules; + + tree_rule match => 'img[@alt="pick"]', action => sub { + return $_[0]->it->findvalue('@src'); + }; + +} + +package main; +use Test::Most qw(no_plan die); +use strict; +use warnings; +use HTML::TreeBuilder::XPath; + +sub HTML::TreeBuilder::XPath::Root::getRootNode { return $_[0] } + +my $tree=HTML::TreeBuilder::XPath->new(); +$tree->parse(<<'HTML');$tree->eof; +<html> + <body> + <p>test</p> + <img src="nothing" /> + <img src="this one" alt="pick" /> + </body> +</html> +HTML + +{ +my $trans=HtmlTransform->new(engine=>XML::XPathEngine->new()); +my @results=$trans->transform($tree); +is_deeply \@results,['this one'],'HTML example'; +} |