Fixing failing XML unit tests
parent
99172b6f79
commit
cea24feaa9
|
@ -1,4 +1,3 @@
|
||||||
IN: templating
|
|
||||||
USING: kernel xml sequences assocs tools.test io arrays namespaces
|
USING: kernel xml sequences assocs tools.test io arrays namespaces
|
||||||
xml.data xml.utilities xml.writer generic sequences.deep ;
|
xml.data xml.utilities xml.writer generic sequences.deep ;
|
||||||
|
|
||||||
|
@ -9,10 +8,10 @@ SYMBOL: ref-table
|
||||||
|
|
||||||
GENERIC: (r-ref) ( xml -- )
|
GENERIC: (r-ref) ( xml -- )
|
||||||
M: tag (r-ref)
|
M: tag (r-ref)
|
||||||
sub-tag over at [
|
sub-tag over at* [
|
||||||
ref-table get at
|
ref-table get at
|
||||||
swap set-tag-children
|
swap set-tag-children
|
||||||
] [ drop ] if* ;
|
] [ 2drop ] if ;
|
||||||
M: object (r-ref) drop ;
|
M: object (r-ref) drop ;
|
||||||
|
|
||||||
: template ( xml -- )
|
: template ( xml -- )
|
||||||
|
@ -40,4 +39,4 @@ M: object (r-ref) drop ;
|
||||||
sample-doc string>xml dup template xml>string
|
sample-doc string>xml dup template xml>string
|
||||||
] with-scope ;
|
] with-scope ;
|
||||||
|
|
||||||
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<html xmlns:f=\"http://littledan.onigirihouse.com/namespaces/replace\"><body><span f:sub=\"foo\">foo</span><div f:sub=\"bar\">blah<a/></div><p f:sub=\"baz\"/></body></html>" ] [ test-refs ] unit-test
|
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?><html xmlns:f=\"http://littledan.onigirihouse.com/namespaces/replace\"><body><span f:sub=\"foo\">foo</span><div f:sub=\"bar\">blah<a/></div><p f:sub=\"baz\"/></body></html>" ] [ test-refs ] unit-test
|
||||||
|
|
|
@ -26,7 +26,7 @@ SYMBOL: xml-file
|
||||||
] unit-test
|
] unit-test
|
||||||
[ V{ "fa&g" } ] [ xml-file get "x" get-id tag-children ] unit-test
|
[ V{ "fa&g" } ] [ xml-file get "x" get-id tag-children ] unit-test
|
||||||
[ "that" ] [ xml-file get "this" swap at ] unit-test
|
[ "that" ] [ xml-file get "this" swap at ] unit-test
|
||||||
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<a b=\"c\"/>" ]
|
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?><a b=\"c\"/>" ]
|
||||||
[ "<a b='c'/>" string>xml xml>string ] unit-test
|
[ "<a b='c'/>" string>xml xml>string ] unit-test
|
||||||
[ "abcd" ] [
|
[ "abcd" ] [
|
||||||
"<main>a<sub>bc</sub>d<nothing/></main>" string>xml
|
"<main>a<sub>bc</sub>d<nothing/></main>" string>xml
|
||||||
|
@ -44,7 +44,7 @@ SYMBOL: xml-file
|
||||||
at swap "z" >r tuck r> swap set-at
|
at swap "z" >r tuck r> swap set-at
|
||||||
T{ name f "blah" "z" f } swap at ] unit-test
|
T{ name f "blah" "z" f } swap at ] unit-test
|
||||||
[ "foo" ] [ "<boo><![CDATA[foo]]></boo>" string>xml children>string ] unit-test
|
[ "foo" ] [ "<boo><![CDATA[foo]]></boo>" string>xml children>string ] unit-test
|
||||||
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<foo>bar baz</foo>" ]
|
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?><foo>bar baz</foo>" ]
|
||||||
[ "<foo>bar</foo>" string>xml [ " baz" append ] map xml>string ] unit-test
|
[ "<foo>bar</foo>" string>xml [ " baz" append ] map xml>string ] unit-test
|
||||||
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<foo>\n bar\n</foo>" ]
|
[ "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<foo>\n bar\n</foo>" ]
|
||||||
[ "<foo> bar </foo>" string>xml pprint-xml>string ] unit-test
|
[ "<foo> bar </foo>" string>xml pprint-xml>string ] unit-test
|
||||||
|
|
|
@ -14,7 +14,9 @@ SYMBOL: indenter
|
||||||
sensitive-tags get swap [ names-match? ] curry contains? ;
|
sensitive-tags get swap [ names-match? ] curry contains? ;
|
||||||
|
|
||||||
: indent-string ( -- string )
|
: indent-string ( -- string )
|
||||||
indentation get indenter get <repetition> concat ;
|
xml-pprint? get
|
||||||
|
[ indentation get indenter get <repetition> concat ]
|
||||||
|
[ "" ] if ;
|
||||||
|
|
||||||
: ?indent ( -- )
|
: ?indent ( -- )
|
||||||
xml-pprint? get [ nl indent-string write ] when ;
|
xml-pprint? get [ nl indent-string write ] when ;
|
||||||
|
@ -53,7 +55,7 @@ SYMBOL: indenter
|
||||||
GENERIC: write-item ( object -- )
|
GENERIC: write-item ( object -- )
|
||||||
|
|
||||||
M: string write-item
|
M: string write-item
|
||||||
escape-string xml-pprint? over empty? not and
|
escape-string dup empty? not xml-pprint? get and
|
||||||
[ nl 80 indent-string indented-break ] when write ;
|
[ nl 80 indent-string indented-break ] when write ;
|
||||||
|
|
||||||
: write-tag ( tag -- )
|
: write-tag ( tag -- )
|
||||||
|
|
Loading…
Reference in New Issue