Mercurial > pub > Impl
view _test/any.pl @ 245:7c517134c42f
Added Unsupported media type Web exception
corrected resourceLocation setting in the resource
Implemented localizable resources for text messages
fixed TT view scopings, INIT block in controls now sets globals correctly.
author | sergey |
---|---|
date | Mon, 29 Oct 2012 03:15:22 +0400 |
parents | c289ed9662ca |
children | 3f38dabaf5cc |
line wrap: on
line source
#!/usr/bin/perl -w use strict; use lib '..\Lib'; require IMPL::DOM::Navigator::SimpleBuilder; require IMPL::DOM::XMLReader; require IMPL::DOM::Schema; my $builder = IMPL::DOM::Navigator::SimpleBuilder->new(); use Time::HiRes qw(gettimeofday tv_interval); my $t = [gettimeofday]; $builder->NavigateCreate('personInfo', version => '1'); $builder->NavigateCreate('firstName')->nodeValue('Nemo'); $builder->Back(); $builder->NavigateCreate('lastName')->nodeValue('Nobel'); $builder->Back(); $builder->NavigateCreate('lastName')->nodeValue('Gardum'); $builder->Back(); for(my $i = 0 ; $i < 10000; $i++) { $builder->NavigateCreate('address', local => 1); $builder->NavigateCreate('street')->nodeValue('Hellroad'); $builder->Back(); $builder->NavigateCreate('line')->nodeValue($_); $builder->Back(); $builder->Back(); } $builder->Back(); print "Build: ",tv_interval($t,[gettimeofday]),"\n"; $t = [gettimeofday]; my $doc = new IMPL::DOM::Document(nodeName => 'doc'); for(my $i = 0 ; $i < 30000; $i++) { my $node = new IMPL::DOM::Node(nodeName => 'test'); $node->nodeValue(100); $doc->appendChild($node); } print "Create 30000 nodes: ",tv_interval($t,[gettimeofday]),"\n"; $t = [gettimeofday]; $builder = IMPL::DOM::Navigator::SimpleBuilder->new(); my $reader = IMPL::DOM::XMLReader->new( Navigator => $builder ); $reader->ParseFile("Resources/large.xml"); print "Parsing large Xml file: ",tv_interval($t,[gettimeofday]),"\n"; my $count = selectAll($builder->Document); my $len = length $builder->Document->text; print "Total nodes loaded: $count, data length: $len\n"; $t = [gettimeofday]; $builder = IMPL::DOM::Navigator::SimpleBuilder->new(); my $reader2 = IMPL::DOM::XMLReader->new( Navigator => $builder ); $reader2->ParseFile("Resources/person_info.xml"); print "Parsing small Xml file: ",tv_interval($t,[gettimeofday]),"\n"; $t = [gettimeofday]; IMPL::DOM::Schema->LoadSchema('Resources/form.xml') for 1..10; print "Load a small schema 10 times: ",tv_interval($t,[gettimeofday]),"\n"; sub selectAll { my $node = shift; $node,map selectAll($_),@{$node->childNodes}; }