diff options
Diffstat (limited to 'library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT')
44 files changed, 378 insertions, 0 deletions
diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-preserve.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-preserve.htmlt new file mode 100644 index 0000000000..650f00b6b0 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-preserve.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.AllowedElements = b,i,p,a +HTML.AllowedAttributes = a.href,*.id +--HTML-- +<p>Par.</p> +<p>Para<a href="http://google.com/">gr</a>aph</p> +Text<b>Bol<i>d</i></b> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-remove.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-remove.htmlt new file mode 100644 index 0000000000..2b6b8eea6d --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/allowed-remove.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.AllowedElements = b,i,p,a +HTML.AllowedAttributes = a.href,*.id +--HTML-- +<span>Not allowed</span><a class="mef" id="foobar">Remove id too!</a> +--EXPECT-- +Not allowed<a>Remove id too!</a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/basic.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/basic.htmlt new file mode 100644 index 0000000000..4c1f42778a --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/basic.htmlt @@ -0,0 +1,5 @@ +--HTML-- +<b>basic</b> +--EXPECT-- +<b>basic</b> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-preserve.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-preserve.htmlt new file mode 100644 index 0000000000..d8882fe222 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-preserve.htmlt @@ -0,0 +1,6 @@ +--INI-- +HTML.ForbiddenElements = b +HTML.ForbiddenAttributes = a@href +--HTML-- +<p>foo</p> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-remove.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-remove.htmlt new file mode 100644 index 0000000000..1b59858738 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/blacklist-remove.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.ForbiddenElements = b +HTML.ForbiddenAttributes = a@href +--HTML-- +<b>Foo<a href="bar">bar</a></b> +--EXPECT-- +Foo<a>bar</a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-preserve.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-preserve.htmlt new file mode 100644 index 0000000000..a5fe3f849d --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-preserve.htmlt @@ -0,0 +1,5 @@ +--INI-- +CSS.AllowedProperties = color,background-color +--HTML-- +<div style="color:#f00;background-color:#ded;">red</div> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-remove.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-remove.htmlt new file mode 100644 index 0000000000..644b7001a3 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/css-allowed-remove.htmlt @@ -0,0 +1,7 @@ +--INI-- +CSS.AllowedProperties = color,background-color +--HTML-- +<div style="color:#f00;border:1px solid #000">red</div> +--EXPECT-- +<div style="color:#f00;">red</div> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/disable-uri.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/disable-uri.htmlt new file mode 100644 index 0000000000..fa692e4440 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/disable-uri.htmlt @@ -0,0 +1,6 @@ +--INI-- +URI.Disable = true +--HTML-- +<img src="foobar" /> +--EXPECT-- +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/double-youtube.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/double-youtube.htmlt new file mode 100644 index 0000000000..a46ce4736a --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/double-youtube.htmlt @@ -0,0 +1,6 @@ +--INI-- +HTML.SafeObject = true +Output.FlashCompat = true +--HTML-- +<object width="425" height="350" data="http://www.youtube.com/v/BdU--T8rLns" type="application/x-shockwave-flash"><param name="allowScriptAccess" value="never" /><param name="allowNetworking" value="internal" /><param name="movie" value="http://www.youtube.com/v/BdU--T8rLns" /><param name="wmode" value="window" /></object> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/empty.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/empty.htmlt new file mode 100644 index 0000000000..9094c47b04 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/empty.htmlt @@ -0,0 +1,6 @@ +--INI-- + +--HTML-- + +--EXPECT-- +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/file-uri.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/file-uri.htmlt new file mode 100644 index 0000000000..5b9e34a8c4 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/file-uri.htmlt @@ -0,0 +1,5 @@ +--INI-- +URI.AllowedSchemes = file +--HTML-- +<a href="file:///foo">foo</a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-default.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-default.htmlt new file mode 100644 index 0000000000..1c1460f2c5 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-default.htmlt @@ -0,0 +1,5 @@ +--HTML-- +<span id="moon">foobar</span> +--EXPECT-- +<span>foobar</span> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-enabled.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-enabled.htmlt new file mode 100644 index 0000000000..70ddcf99f5 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-enabled.htmlt @@ -0,0 +1,6 @@ +--INI-- +Attr.EnableID = true +--HTML-- +<span id="moon">foobar</span> +<img id="folly" src="folly.png" alt="Omigosh!" /> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-img.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-img.htmlt new file mode 100644 index 0000000000..12755bea35 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-img.htmlt @@ -0,0 +1,8 @@ +--INI-- +Attr.EnableID = true +Core.LexerImpl = DirectLex +--HTML-- +<img src="img_11775.jpg" alt="[Img #11775]" id="EMBEDDED_IMG_11775" > +--EXPECT-- +<img src="img_11775.jpg" alt="[Img #11775]" id="EMBEDDED_IMG_11775" /> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-name-mix.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-name-mix.htmlt new file mode 100644 index 0000000000..a48da8e625 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/id-name-mix.htmlt @@ -0,0 +1,11 @@ +--INI-- +Attr.EnableID = true +--HTML-- +<a name="foo" id="foo">Test</a> +<a name="foo">Test2</a> +<a name="bar" id="baz">Test3</a> +--EXPECT-- +<a name="foo" id="foo">Test</a> +<a>Test2</a> +<a name="bar" id="baz">Test3</a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-list-loop.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-list-loop.htmlt new file mode 100644 index 0000000000..0a63e89550 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-list-loop.htmlt @@ -0,0 +1,5 @@ +--HTML-- +<i><ul></ul></i> +--EXPECT-- +<i></i><i></i> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-wraps-block.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-wraps-block.htmlt new file mode 100644 index 0000000000..da6bae6892 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/inline-wraps-block.htmlt @@ -0,0 +1,5 @@ +--HTML-- +<a href="foo.html"><h1>Foobar</h1></a> +--EXPECT-- +<a href="foo.html"></a><h1><a href="foo.html">Foobar</a></h1><a href="foo.html"></a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/list-nesting.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/list-nesting.htmlt new file mode 100644 index 0000000000..9446400991 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/list-nesting.htmlt @@ -0,0 +1,7 @@ +--INI-- +Core.LexerImpl = DirectLex +--HTML-- +<ul><li>Sublist 1</li><ul><li>Bullet</li></ul><li>Sublist 2</li><ol><li>Billet</li></ol></ul> +--EXPECT-- +<ul><li>Sublist 1<ul><li>Bullet</li></ul></li><li>Sublist 2<ol><li>Billet</li></ol></li></ul> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge-extra.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge-extra.htmlt new file mode 100644 index 0000000000..9906155e53 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge-extra.htmlt @@ -0,0 +1,13 @@ +--SKIPIF-- +return !function_exists('hash_hmac'); +--INI-- +URI.Munge = "/redirect?s=%s&t=%t&r=%r&n=%n&m=%m&p=%p" +URI.MungeSecretKey = "foo" +URI.MungeResources = true +--HTML-- +<a href="http://example.com">Link</a> +<img src="http://example.com" style="background-image:url(http://example.com);" alt="example.com" /> +--EXPECT-- +<a href="/redirect?s=http%3A%2F%2Fexample.com&t=c763c4a30204eee8470a3292e0f0cd91a639654d039d45f1495a50207847e954&r=&n=a&m=href&p=">Link</a> +<img src="/redirect?s=http%3A%2F%2Fexample.com&t=c763c4a30204eee8470a3292e0f0cd91a639654d039d45f1495a50207847e954&r=1&n=img&m=src&p=" style="background-image:url("/redirect?s=http%3A%2F%2Fexample.com&t=c763c4a30204eee8470a3292e0f0cd91a639654d039d45f1495a50207847e954&r=1&n=img&m=style&p=background-image");" alt="example.com" /> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge.htmlt new file mode 100644 index 0000000000..827c216e63 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/munge.htmlt @@ -0,0 +1,52 @@ +--INI-- +URI.Munge = "/r/%s" +URI.AllowedSchemes = http,ftp,file +--HTML-- +<a href="google.com">foo</a> +<a href="/google.com">foo</a> +<a href="//google.com">foo</a> +<a href="///google.com">foo</a> +<a href="////google.com">foo</a> + +<a href="http:google.com">foo</a> +<a href="http:/google.com">foo</a> +<a href="http://google.com">foo</a> +<a href="http:///google.com">foo</a> +<a href="http:////google.com">foo</a> + +<a href="ftp:google.com">foo</a> +<a href="ftp:/google.com">foo</a> +<a href="ftp://google.com">foo</a> +<a href="ftp:///google.com">foo</a> +<a href="ftp:////google.com">foo</a> + +<a href="file:google.com">foo</a> +<a href="file:/google.com">foo</a> +<a href="file://google.com">foo</a> +<a href="file:///google.com">foo</a> +<a href="file:////google.com">foo</a> +--EXPECT-- +<a href="google.com">foo</a> +<a href="/google.com">foo</a> +<a href="/r/%2F%2Fgoogle.com">foo</a> +<a href="/google.com">foo</a> +<a>foo</a> + +<a href="google.com">foo</a> +<a href="/google.com">foo</a> +<a href="/r/http%3A%2F%2Fgoogle.com">foo</a> +<a href="/google.com">foo</a> +<a>foo</a> + +<a>foo</a> +<a>foo</a> +<a href="/r/ftp%3A%2F%2Fgoogle.com">foo</a> +<a>foo</a> +<a>foo</a> + +<a href="file:google.com">foo</a> +<a href="file:/google.com">foo</a> +<a href="file://google.com">foo</a> +<a href="file:///google.com">foo</a> +<a href="file:////google.com">foo</a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/name.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/name.htmlt new file mode 100644 index 0000000000..1713ed417d --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/name.htmlt @@ -0,0 +1,6 @@ +--INI-- +Attr.EnableID = true +HTML.Doctype = "XHTML 1.0 Strict" +--HTML-- +<a name="asdf"></a> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-googlemaps.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-googlemaps.htmlt new file mode 100644 index 0000000000..40fac62d56 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-googlemaps.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.SafeIframe = true +URI.SafeIframeRegexp = "%^http://maps.google.com/%" +--HTML-- +<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/?ie=UTF8&ll=37.0625,-95.677068&spn=24.455808,37.353516&z=4&output=embed"></iframe> +--EXPECT-- +<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/?ie=UTF8&ll=37.0625,-95.677068&spn=24.455808,37.353516&z=4&output=embed"></iframe> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-invalid.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-invalid.htmlt new file mode 100644 index 0000000000..5b366da541 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-invalid.htmlt @@ -0,0 +1,7 @@ +--INI-- +HTML.SafeIframe = true +--HTML-- +<iframe src="http://www.example.com/"></iframe> +--EXPECT-- +<iframe></iframe> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-youtube.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-youtube.htmlt new file mode 100644 index 0000000000..1abc2c8279 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe-youtube.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.SafeIframe = true +URI.SafeIframeRegexp = "%^http://www.youtube.com/embed/%" +--HTML-- +<iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/RVtEQxH7PWA" frameborder="0" allowfullscreen></iframe> +--EXPECT-- +<iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/RVtEQxH7PWA" frameborder="0"></iframe> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe.htmlt new file mode 100644 index 0000000000..7c0b60d2f1 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-iframe.htmlt @@ -0,0 +1,14 @@ +--INI-- +HTML.SafeIframe = true +URI.SafeIframeRegexp = "%(^http://www.example.com/|^https?://dev.example.com/)%" +--HTML-- +<iframe src="http://www.example.com/"></iframe> +<iframe src="http://malicious.host.com/?http://www.example.com/"></iframe> +<iframe src="http://dev.example.com/"></iframe> +<iframe src="https://dev.example.com/"></iframe> +--EXPECT-- +<iframe src="http://www.example.com/"></iframe> +<iframe></iframe> +<iframe src="http://dev.example.com/"></iframe> +<iframe src="https://dev.example.com/"></iframe> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed-munge.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed-munge.htmlt new file mode 100644 index 0000000000..e30edc37a2 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed-munge.htmlt @@ -0,0 +1,12 @@ +--SKIPIF-- +return !function_exists('hash_hmac'); +--INI-- +HTML.SafeObject = true +HTML.SafeEmbed = true +URI.Munge = "/redirect.php?url=%s&check=%t" +URI.MungeSecretKey = "foo" +--HTML-- +<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en"></param><embed src="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash" width="425" height="344"></embed></object> +--EXPECT-- +<object width="425" height="344" data="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash"><param name="allowScriptAccess" value="never" /><param name="allowNetworking" value="internal" /><param name="movie" value="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" /><embed src="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash" width="425" height="344" allowscriptaccess="never" allownetworking="internal" /></object> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed.htmlt new file mode 100644 index 0000000000..f4bb0ff091 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/safe-object-embed.htmlt @@ -0,0 +1,8 @@ +--INI-- +HTML.SafeObject = true +HTML.SafeEmbed = true +--HTML-- +<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en"></param><embed src="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash" width="425" height="344"></embed></object> +--EXPECT-- +<object width="425" height="344" data="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash"><param name="allowScriptAccess" value="never" /><param name="allowNetworking" value="internal" /><param name="movie" value="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" /><embed src="http://www.youtube.com/v/Oq3FV_zdyy0&hl=en" type="application/x-shockwave-flash" width="425" height="344" allowscriptaccess="never" allownetworking="internal" /></object> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-bare.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-bare.htmlt new file mode 100644 index 0000000000..f85c2fb5ef --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-bare.htmlt @@ -0,0 +1,9 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<script type="text/javascript">alert("<This is compatible with XHTML>");</script> +--EXPECT-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-cdata.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-cdata.htmlt new file mode 100644 index 0000000000..e7d6d7f5b5 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-cdata.htmlt @@ -0,0 +1,11 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<script type="text/javascript"><![CDATA[ +alert("<This is compatible with XHTML>"); +]]></script> +--EXPECT-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-comment.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-comment.htmlt new file mode 100644 index 0000000000..006901919c --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-comment.htmlt @@ -0,0 +1,11 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<script type="text/javascript"><!-- +alert("<This is compatible with XHTML>"); +//--></script> +--EXPECT-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-dbl-comment.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-dbl-comment.htmlt new file mode 100644 index 0000000000..ef899b5972 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-dbl-comment.htmlt @@ -0,0 +1,11 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<script type="text/javascript"><![CDATA[ +alert("<This is compatible with XHTML>"); +//]]></script> +--EXPECT-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-ideal.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-ideal.htmlt new file mode 100644 index 0000000000..70510687c3 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/script-ideal.htmlt @@ -0,0 +1,11 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--EXPECT-- +<script type="text/javascript"><!--//--><![CDATA[//><!-- +alert("<This is compatible with XHTML>"); +//--><!]]></script> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/secure-munge.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/secure-munge.htmlt new file mode 100644 index 0000000000..7c41cc9ce6 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/secure-munge.htmlt @@ -0,0 +1,12 @@ +--SKIPIF-- +return !function_exists('hash_hmac'); +--INI-- +URI.Munge = "/redirect.php?url=%s&check=%t" +URI.MungeSecretKey = "foo" +--HTML-- +<a href="http://localhost">foo</a> +<img src="http://localhost" alt="local" /> +--EXPECT-- +<a href="/redirect.php?url=http%3A%2F%2Flocalhost&check=c0efad89696082f5cb925d28636b0f4260f346391c92c70c8e9eba72591c2a73">foo</a> +<img src="http://localhost" alt="local" /> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-preserve-yen.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-preserve-yen.htmlt new file mode 100644 index 0000000000..862ecd970c --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-preserve-yen.htmlt @@ -0,0 +1,8 @@ +--SKIPIF-- +if (!HTMLPurifier_Encoder::iconvAvailable()) return true; +--INI-- +Core.Encoding = "Shift_JIS" +Core.EscapeNonASCIICharacters = true +--HTML-- +<b style="font-family:'¥';">111</b> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-remove-yen.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-remove-yen.htmlt new file mode 100644 index 0000000000..aae7598dd9 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/shift-jis-remove-yen.htmlt @@ -0,0 +1,9 @@ +--SKIPIF-- +if (!HTMLPurifier_Encoder::iconvAvailable()) return true; +--INI-- +Core.Encoding = Shift_JIS +--HTML-- +<b style="font-family:'¥';">111</b> +--EXPECT-- +<b style="font-family:'';">111</b> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote-with-inline.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote-with-inline.htmlt new file mode 100644 index 0000000000..a6eb0ec660 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote-with-inline.htmlt @@ -0,0 +1,7 @@ +--INI-- +HTML.Doctype = "XHTML 1.0 Strict" +--HTML-- +<blockquote>Illegal <b>contents</b></blockquote> +--EXPECT-- +<blockquote><p>Illegal <b>contents</b></p></blockquote> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote.htmlt new file mode 100644 index 0000000000..b61e8dc070 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-blockquote.htmlt @@ -0,0 +1,7 @@ +--INI-- +HTML.Strict = true +--HTML-- +<blockquote>Illegal contents</blockquote> +--EXPECT-- +<blockquote><p>Illegal contents</p></blockquote> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-underline.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-underline.htmlt new file mode 100644 index 0000000000..a2e18b1c99 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/strict-underline.htmlt @@ -0,0 +1,7 @@ +--INI-- +HTML.Strict = true +--HTML-- +<u>Illegal underline</u> +--EXPECT-- +<span style="text-decoration:underline;">Illegal underline</span> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/style-onload.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/style-onload.htmlt new file mode 100644 index 0000000000..8782bdc609 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/style-onload.htmlt @@ -0,0 +1,6 @@ +--INI-- +Core.CollectErrors = true +--HTML-- +<style/onload = !-alert(1)> +--EXPECT-- +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/tidy-background.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/tidy-background.htmlt new file mode 100644 index 0000000000..08bda26781 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/tidy-background.htmlt @@ -0,0 +1,5 @@ +--HTML-- +<table background="logo.png"><tr><td>asdf</td></tr></table> +--EXPECT-- +<table style="background-image:url("logo.png");"><tr><td>asdf</td></tr></table> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-required.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-required.htmlt new file mode 100644 index 0000000000..62dc159d07 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-required.htmlt @@ -0,0 +1,6 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<ul><!-- Foo --></ul> +--EXPECT-- +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-table.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-table.htmlt new file mode 100644 index 0000000000..89d80febf3 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments-table.htmlt @@ -0,0 +1,5 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<table><!-- foo --><tr><td>Foo</td></tr></table> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments.htmlt new file mode 100644 index 0000000000..93b4a35a69 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/trusted-comments.htmlt @@ -0,0 +1,5 @@ +--INI-- +HTML.Trusted = true +--HTML-- +<!-- Foobar --> +--# vim: et sw=4 sts=4 diff --git a/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/whitespace-preserve.htmlt b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/whitespace-preserve.htmlt new file mode 100644 index 0000000000..861bddaf43 --- /dev/null +++ b/library/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT/whitespace-preserve.htmlt @@ -0,0 +1,3 @@ +--HTML-- +Foo<b> </b>bar +--# vim: et sw=4 sts=4 |
