--- parser3/tests/149.html 2007/08/20 09:20:15 1.2 +++ parser3/tests/149.html 2010/07/25 06:14:46 1.3 @@ -1,130 +1,120 @@ -@main[] -$xdoc[^xdoc::create{ - - - - - ПИФ^taint[&] - - - P«^;AF B - secret - - -}] - -^dump[Origin;$xdoc] - - -^xdoc.documentElement.firstChild.nextSibling.getAttributeNS[http://parser.ru/first;attrname] -^xdoc.documentElement.lastChild.previousSibling.setAttributeNS[http://parser.ru/second;second:attrname2;value 2] - -^dump[Added attrname2 for last 'man' element;$xdoc] - - -^xdoc.documentElement.firstChild.nextSibling.removeAttributeNS[http://parser.ru/first;attrname] - -^dump[Removed attrname for first 'man' element;$xdoc] - - -^^x.getAttrinuteNS[...;attrname2]='^xdoc.documentElement.lastChild.previousSibling.getAttributeNS[http://parser.ru/second;attrname2]'
-$Attr[^xdoc.documentElement.lastChild.previousSibling.getAttributeNodeNS[http://parser.ru/second;attrname2]] -^$Attr.nodeValue='$Attr.nodeValue'
-$Attr.nodeValue[changed attribute value] - -^dump[Changed attrname2 for last 'man' element;$xdoc] - - -#intentionally not predeclaring namespace. todo: think about that stuff -$newAttr[^xdoc.createAttributeNS[http://parser.ru/third;third:attrname3]] -$oldAttr[^xdoc.documentElement.lastChild.previousSibling.setAttributeNodeNS[$newAttr]] -^if($oldAttr is xnode){wrong;right}
-$newAttr.nodeValue[value3] - -^dump[Added attrname3 for last 'man' element;$xdoc] - - -$NodeList[^xdoc.getElementsByTagNameNS[http://parser.ru/tst;findme]] -^show_xnodes1[$NodeList]

- -$man1[^xdoc.selectSingle[/people/man[@id=1]]] -^if(^man1.hasAttribute[id]){right;wrong2!}
-^if(^man1.hasAttributeNS[http://parser.ru/third;attrname3]){right;wrong3} - -
- -/people/man[@id=1] ^if(^man1.hasAttributes[]){has;hasn't} attributes
-$name2[^xdoc.selectSingle[/people/man[@id=1]/name]] -/people/man[@id=1]/name ^if(^name2.hasAttributes[]){has;hasn't} attributes
- - - -@dump[sTitle;xdoc] -^if(def $sTitle){

$sTitle

} -^show_xdoc2[$xdoc]
-^show_xnode1[$xdoc]
-
- - - -@show1[array][i;x;pattributes] -^for[i](0;$array-1){ - $x[$array.$i] - $x.firstChild.nodeValue: - $pattributes[$x.parentNode.attributes] - ^if(^pattributes._count[]){ - $pattributes.id.name=$pattributes.id.nodeValue - } -
-} - - - -@show_xnodes1[array][i] -^for[i](0;^array._count[]-1){ - ^show_xnode1[$array.$i;0;1] -} - - - -@show_xnode1[x;level;single][l;pairs;names] -^if(def $x){ - ^for[l](0;$level-1){ ^; ^; ^; ^;} - ^if($x.nodeType == $xnode:ELEMENT_NODE){ - <^;$x.nodeName - $pairs[$x.attributes] - ^if(def $pairs){ - $names[^pairs._keys[]] - ^names.menu{ $names.key="$pairs.[$names.key].nodeValue"} - } - >^; - }{ - [$x.nodeType] - } - - ^if(def $x.nodeValue){$x.nodeValue}
- ^show_xnode1[$x.firstChild]($level+1) - ^if(!$single){ - ^show_xnode1[$x.nextSibling]($level) - } - - ^if($x.nodeType == $xnode:ELEMENT_NODE){ - ^for[l](0;$level-1){ ^; ^; ^; ^;}<^;/$x.nodeName>^;
- } -} - - - -@show_xdoc2[xdoc] -#$response:body[^xdoc.file[ $.media-type[text/paf] ]] -
^taint[html][^xdoc.string[
-#	$.method[html]
-#	$.encoding[utF-8]
-#  	$.omit-xml-declaration[yes]
-#	$.standalone[no]
-#	-$.doctype-public[-//W3C//DTD XHTML]
-#	-$.doctype-system[/a/b/c/]
-#	$.indent[yes]
-#	$.media-type[text/paf]
-]]
-
+@main[] +$xdoc[^xdoc::create{ + + + + + ПИФ^taint[&] + + + P«^;AF B + secret + + +}] + +^dump[Origin;$xdoc] + + +^xdoc.documentElement.firstChild.nextSibling.getAttributeNS[http://parser.ru/first;attrname] +^xdoc.documentElement.lastChild.previousSibling.setAttributeNS[http://parser.ru/second;second:attrname2;value 2] + +^dump[Added attrname2 for last 'man' element;$xdoc] + + +^xdoc.documentElement.firstChild.nextSibling.removeAttributeNS[http://parser.ru/first;attrname] + +^dump[Removed attrname for first 'man' element;$xdoc] + + +^^x.getAttrinuteNS[...;attrname2]='^xdoc.documentElement.lastChild.previousSibling.getAttributeNS[http://parser.ru/second;attrname2]'
+$Attr[^xdoc.documentElement.lastChild.previousSibling.getAttributeNodeNS[http://parser.ru/second;attrname2]] +^$Attr.nodeValue='$Attr.nodeValue'
+$Attr.nodeValue[changed attribute value] + +^dump[Changed attrname2 for last 'man' element;$xdoc] + + +#intentionally not predeclaring namespace. todo: think about that stuff +$newAttr[^xdoc.createAttributeNS[http://parser.ru/third;third:attrname3]] +$oldAttr[^xdoc.documentElement.lastChild.previousSibling.setAttributeNodeNS[$newAttr]] +^if($oldAttr is xnode){wrong;right}
+$newAttr.nodeValue[value3] + +^dump[Added attrname3 for last 'man' element;$xdoc] + + +$NodeList[^xdoc.getElementsByTagNameNS[http://parser.ru/tst;findme]] +^show_xnodes1[$NodeList]

+ +$man1[^xdoc.selectSingle[/people/man[@id=1]]] +^if(^man1.hasAttribute[id]){right;wrong2!}
+^if(^man1.hasAttributeNS[http://parser.ru/third;attrname3]){right;wrong3} + +
+ +/people/man[@id=1] ^if(^man1.hasAttributes[]){has;hasn't} attributes
+$name2[^xdoc.selectSingle[/people/man[@id=1]/name]] +/people/man[@id=1]/name ^if(^name2.hasAttributes[]){has;hasn't} attributes
+ +@dump[sTitle;xdoc] +^if(def $sTitle){

$sTitle

} +^show_xdoc2[$xdoc]
+^show_xnode1[$xdoc]
+
+ +@show1[array][i;x;pattributes] +^for[i](0;$array-1){ + $x[$array.$i] + $x.firstChild.nodeValue: + $pattributes[$x.parentNode.attributes] + ^if(^pattributes._count[]){ + $pattributes.id.name=$pattributes.id.nodeValue + } +
+} + +@show_xnodes1[array][i] +^for[i](0;^array._count[]-1){ + ^show_xnode1[$array.$i;0;1] +} + +@show_xnode1[x;level;single][l;pairs;names] +^if(def $x){ + ^for[l](0;$level-1){ ^; ^; ^; ^;} + ^if($x.nodeType == $xnode:ELEMENT_NODE){ + <^;$x.nodeName + $pairs[$x.attributes] + ^if(def $pairs){ + $names[^pairs._keys[]] + ^names.menu{ $names.key="$pairs.[$names.key].nodeValue"} + } + >^; + }{ + [$x.nodeType] + } + + ^if(def $x.nodeValue){$x.nodeValue}
+ ^show_xnode1[$x.firstChild]($level+1) + ^if(!$single){ + ^show_xnode1[$x.nextSibling]($level) + } + + ^if($x.nodeType == $xnode:ELEMENT_NODE){ + ^for[l](0;$level-1){ ^; ^; ^; ^;}<^;/$x.nodeName>^;
+ } +} + +@show_xdoc2[xdoc] +#$response:body[^xdoc.file[ $.media-type[text/paf] ]] +
^taint[html][^xdoc.string[
+#	$.method[html]
+#	$.encoding[utF-8]
+#  	$.omit-xml-declaration[yes]
+#	$.standalone[no]
+#	-$.doctype-public[-//W3C//DTD XHTML]
+#	-$.doctype-system[/a/b/c/]
+#	$.indent[yes]
+#	$.media-type[text/paf]
+]]
+