This is an automated email from the git hooks/post-receive script. js pushed a commit to branch master in repository libcatmandu-perl.
commit 1f545a4c9020d04a23b86b9dbd86c18b700e63cf Author: Patrick Hochstenbach <patrick.hochstenb...@ugent.be> Date: Fri Dec 11 15:26:27 2015 +0100 More path get,set,create,delete and retain tests --- t/Catmandu-Fix.t | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/t/Catmandu-Fix.t b/t/Catmandu-Fix.t index dcce5d1..3014545 100644 --- a/t/Catmandu-Fix.t +++ b/t/Catmandu-Fix.t @@ -80,4 +80,81 @@ $fixer = Catmandu::Fix->new(fixes => [IO::File->new('< t/myfixes.fix')]); ok $fixer; is_deeply $fixer->fix({}), {utf8_name => 'ვეპხის ტყაოსანი შოთა რუსთაველი'} , 'fixing utf8'; -done_testing 31; \ No newline at end of file +#-- get + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data.$first,test)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1 2)] , test => 0} , 'get $first test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data.$last,test)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1 2)] , test => 2} , 'get $last test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data.1,test)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1 2)] , test => 1} , 'get position test arary'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data.1,test)']); +is_deeply $fixer->fix({ data => { 1 => 1 }}) , {data => { 1 => 1} , test => 1} , 'get position test hash'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data.*,test)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1 2)] , test => 2} , 'get star test arary'; + +#-- set + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.1)']); +is_deeply $fixer->fix({ data => 1}) , {data => 1 , test => [undef,1] } , 'set position test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.$first)']); +is_deeply $fixer->fix({ data => 1 , test => [qw(0 1 2)]}) , {data => 1 , test => [qw(1 1 2)] } , 'set $first test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.$last)']); +is_deeply $fixer->fix({ data => 1 , test => [qw(0 1 2)]}) , {data => 1 , test => [qw(0 1 1)] } , 'set $last test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.$prepend)']); +is_deeply $fixer->fix({ data => 1 , test => [qw(0 1 2)]}) , {data => 1 , test => [qw(1 0 1 2)] } , 'set $prepend test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.$append)']); +is_deeply $fixer->fix({ data => 1 , test => [qw(0 1 2)]}) , {data => 1 , test => [qw(0 1 2 1)] } , 'set $append test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.*)']); +is_deeply $fixer->fix({ data => 1 , test => [qw(0 1 2)]}) , {data => 1 , test => [qw(1 1 1)] } , 'set star test'; + +$fixer = Catmandu::Fix->new(fixes => ['copy_field(data,test.1)']); +is_deeply $fixer->fix({ data => 1 , test => {}}) , {data => 1 , test => { 1 => 1} } , 'set hash test'; + +#-- delete + +$fixer = Catmandu::Fix->new(fixes => ['remove_field(data.$first)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(1 2)]} , 'remove $first test'; + +$fixer = Catmandu::Fix->new(fixes => ['remove_field(data.$last)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1)]} , 'remove $last test'; + +$fixer = Catmandu::Fix->new(fixes => ['remove_field(data.1)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 2)]} , 'remove position test arary'; + +$fixer = Catmandu::Fix->new(fixes => ['remove_field(data.1)']); +is_deeply $fixer->fix({ data => { 1 => 1 }}) , {data => { } } , 'remove position test hash'; + +$fixer = Catmandu::Fix->new(fixes => ['remove_field(data.*)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => []} , 'remove star test arary'; + +#-- retain + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.$first)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0)]} , 'retain_field $first test'; + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.$last)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(2)]} , 'retain_field $last test'; + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.1)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(1)]} , 'retain_field position test arary'; + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.1)']); +is_deeply $fixer->fix({ data => { 1 => 1 , 2 => 2 }}) , {data => { 1 => 1 } } , 'retain_field position test hash'; + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.*)']); +is_deeply $fixer->fix({ data => [qw(0 1 2)]}) , {data => [qw(0 1 2)]} , 'retain_field star test arary'; + +$fixer = Catmandu::Fix->new(fixes => ['retain_field(data.*)']); +is_deeply $fixer->fix({ data => { 1 => 1 , 2 => 2 }}) , {data => { 1 => 1 , 2 => 2 }} , 'retain_field star test hash'; + +done_testing 54; \ No newline at end of file -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libcatmandu-perl.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkg-perl-cvs-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits