diff options
author | dakkar <dakkar@thenautilus.net> | 2011-02-13 18:47:12 +0000 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2011-02-13 18:47:12 +0000 |
commit | d219a89d8d6ecc553851687967473665a78c77c8 (patch) | |
tree | 35b9cd49896f789c3a629be898a36a813249461e /t/08-optimize.t | |
parent | insight (diff) | |
download | Tree-Transform-XSLTish-optimizer.tar.gz Tree-Transform-XSLTish-optimizer.tar.bz2 Tree-Transform-XSLTish-optimizer.zip |
some more notes on an optimizeroptimizer
Diffstat (limited to 't/08-optimize.t')
-rw-r--r-- | t/08-optimize.t | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/t/08-optimize.t b/t/08-optimize.t new file mode 100644 index 0000000..bd1b891 --- /dev/null +++ b/t/08-optimize.t @@ -0,0 +1,31 @@ +#!perl +use Test::Most; +use strict; +use warnings; +use Tree::Transform::XSLTish::Optimizer; + +my $o=\&Tree::Transform::XSLTish::Optimizer::optimize; + +my @flds=qw(opt_pattern min_depth max_depth expected_result); +my %cases=( + 'foo' => [ 'self::foo',0,0,'any' ], + '//foo' => [ 'self::foo',0,0,'any' ], + 'foo/bar' => [ 'self::bar/parent::foo',0,0,'any' ], + '//foo/bar' => [ 'self::bar/parent::foo',0,0,'any' ], +); + +while (my ($path,$res) = each %cases) { + + note "testing $path"; + + my $rule = { match => $path }; + $o->('',$rule); + + my $i=0; + for my $field (@flds) { + is($rule->{$field},$res->[$i],"$field ok") if defined $res->[$i]; + ++$i; + } +} + +done_testing; |