<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[403] wp-testcase: Move more formatting tests</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg > ul, #logmsg > ol { margin-left: 0; margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd>403</dd>
<dt>Author</dt> <dd>ryan</dd>
<dt>Date</dt> <dd>2011-08-04 20:21:35 +0000 (Thu, 04 Aug 2011)</dd>
</dl>

<h3>Log Message</h3>
<pre>Move more formatting tests</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#wptestcasejacobTestFormattingphp">wp-testcase/jacob/TestFormatting.php</a></li>
<li><a href="#wptestcasetest_includes_formattingphp">wp-testcase/test_includes_formatting.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="wptestcasejacobTestFormattingphp"></a>
<div class="modfile"><h4>Modified: wp-testcase/jacob/TestFormatting.php (402 => 403)</h4>
<pre class="diff"><span>
<span class="info">--- wp-testcase/jacob/TestFormatting.php        2011-08-04 19:59:07 UTC (rev 402)
+++ wp-testcase/jacob/TestFormatting.php        2011-08-04 20:21:35 UTC (rev 403)
</span><span class="lines">@@ -192,156 +192,7 @@
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-class Test_Sanitize_Title extends _WPFormattingTest {
-    function test_strips_html() {
-        $input = &quot;Captain &lt;strong&gt;Awesome&lt;/strong&gt;&quot;;
-        $expected = &quot;captain-awesome&quot;;
-        $this-&gt;assertEquals($expected, sanitize_title($input));
-    }
-    
-    function test_titles_sanitized_to_nothing_are_replaced_with_optional_fallback() {
-        $input = &quot;&lt;strong&gt;&lt;/strong&gt;&quot;;
-        $fallback = &quot;Captain Awesome&quot;;
-        $this-&gt;assertEquals($fallback, sanitize_title($input, $fallback));
-    }
-}
-
-class Test_Sanitize_Title_With_Dashes extends _WPFormattingTest {
-    function test_strips_html() {
-        $input = &quot;Captain &lt;strong&gt;Awesome&lt;/strong&gt;&quot;;
-        $expected = &quot;captain-awesome&quot;;
-        $this-&gt;assertEquals($expected, sanitize_title($input));
-    }
-    function test_strips_unencoded_percent_signs() {
-        $this-&gt;assertEquals(&quot;fran%c3%a7ois&quot;, sanitize_title_with_dashes(&quot;fran%c3%a7%ois&quot;));
-    }
-    function test_makes_title_lowercase() {
-        $this-&gt;assertEquals(&quot;abc&quot;, sanitize_title_with_dashes(&quot;ABC&quot;));
-    }
-    function test_replaces_any_amount_of_whitespace_with_one_hyphen() {
-        $this-&gt;assertEquals(&quot;a-t&quot;, sanitize_title_with_dashes(&quot;a          t&quot;));
-        $this-&gt;assertEquals(&quot;a-t&quot;, sanitize_title_with_dashes(&quot;a    \n\n\nt&quot;));
-    }
-    function test_replaces_any_number_of_hyphens_with_one_hyphen() {
-        $this-&gt;assertEquals(&quot;a-t-t&quot;, sanitize_title_with_dashes(&quot;a----t----t&quot;));
-    }
-    function test_trims_trailing_hyphens() {
-        $this-&gt;assertEquals(&quot;a-t-t&quot;, sanitize_title_with_dashes(&quot;a----t----t----&quot;));
-    }
-    function test_handles_non_entity_ampersands() {
-        $this-&gt;assertEquals(&quot;penn-teller-bull&quot;, sanitize_title_with_dashes(&quot;penn &amp; teller bull&quot;));
-    }
-}
-
</del><span class="cx"> /*
</span><del>-`convert_chars` is a poorly named function that does
-four unrelated tasks. ;)
-*/
-class Test_Convert_Chars extends _WPFormattingTest {
-    function test_replaces_windows1252_entities_with_unicode_ones() {
-        $input = &quot;&amp;#130;&amp;#131;&amp;#132;&amp;#133;&amp;#134;&amp;#135;&amp;#136;&amp;#137;&amp;#138;&amp;#139;&amp;#140;&amp;#145;&amp;#146;&amp;#147;&amp;#148;&amp;#149;&amp;#150;&amp;#151;&amp;#152;&amp;#153;&amp;#154;&amp;#155;&amp;#156;&amp;#159;&quot;;
-        $output = &quot;&amp;#8218;&amp;#402;&amp;#8222;&amp;#8230;&amp;#8224;&amp;#8225;&amp;#710;&amp;#8240;&amp;#352;&amp;#8249;&amp;#338;&amp;#8216;&amp;#8217;&amp;#8220;&amp;#8221;&amp;#8226;&amp;#8211;&amp;#8212;&amp;#732;&amp;#8482;&amp;#353;&amp;#8250;&amp;#339;&amp;#376;&quot;;
-        $this-&gt;assertEquals($output, convert_chars($input));
-    }
-    function test_converts_html_br_and_hr_to_the_xhtml_self_closing_variety() {
-        $inputs = array(
-            &quot;abc &lt;br&gt; lol &lt;br /&gt;&quot; =&gt; &quot;abc &lt;br /&gt; lol &lt;br /&gt;&quot;,
-            &quot;&lt;BR&gt; HO HO &lt;HR&gt;&quot;     =&gt; &quot;&lt;br /&gt; ho ho &lt;hr /&gt;&quot;,
-            &quot;&lt;hr&gt;&lt;br&gt;&quot;            =&gt; &quot;&lt;hr /&gt;&lt;br /&gt;&quot;
-            );
-        foreach ($inputs as $input =&gt; $expected) {
-            $this-&gt;assertEquals($expected, convert_chars($input));
-        }
-    }
-    function test_escapes_lone_ampersands() {
-        $this-&gt;assertEquals(&quot;at&amp;#038;t&quot;, convert_chars(&quot;at&amp;t&quot;));
-    }
-    // what the hell are these? O_o
-    function test_removes_category_and_title_metadata_tags() {
-        $this-&gt;assertEquals(&quot;&quot;, convert_chars(&quot;&lt;title&gt;&lt;div class='lol'&gt;abc&lt;/div&gt;&lt;/title&gt;&lt;category&gt;a&lt;/category&gt;&quot;));
-    }
-}
-
-class Test_Funky_JavaScript_Fix extends _WPFormattingTest {
-    function test_does_nothing_if_not_mac_or_win_ie() {
-        global $is_macIE, $is_winIE;
-        $prev = array($is_macIE, $is_winIE);
-        $is_macIE = $is_winIE = false;
-        $data = $this-&gt;get_testdata(&quot;utf-8-u-urlencoded.txt&quot;);
-        foreach ($data as $datum) {
-            $this-&gt;assertEquals($datum, funky_javascript_fix($datum));
-        }
-        $is_macIE = $prev[0];
-        $is_winIE = $prev[1];
-    }
-    function test_converts_u_percent_encoded_values_if_mac_ie() {
-        global $is_macIE;
-        $prev = $is_macIE;
-        $is_macIE = true;
-        $this-&gt;_run();
-        $is_macIE = $prev;
-    }
-    function test_converts_u_percent_encoded_values_if_win_ie() {
-        global $is_winIE;
-        $prev = $is_winIE;
-        $is_winIE = true;
-        $this-&gt;_run();
-        $is_winIE = $prev;
-    }
-    function _run() {
-        $input = $this-&gt;get_testdata(&quot;utf-8-u-urlencoded.txt&quot;);
-        $output = $this-&gt;get_testdata(&quot;utf-8-entitized.txt&quot;);
-        for ($i=0; $i&lt;count($input); ++$i) {
-            $this-&gt;assertEquals($output[$i], funky_javascript_fix($input[$i]));
-        }
-    }
-}
-
-
-class Test_BalanceTags extends _WPFormattingTest {
-    function test_adds_missing_end_tags() {
-        $this-&gt;assertEquals(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/i&gt;&lt;/b&gt;&quot;, balanceTags(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/b&gt;&quot;, true));
-    }
-    function test_fixes_simple_bad_nesting() {
-        $this-&gt;assertEquals(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/i&gt;&lt;/b&gt;&quot;, balanceTags(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/b&gt;&lt;/i&gt;&quot;, true));
-    }
-}
-
-class Test_Zeroise extends _WPFormattingTest {
-    function test_pads_with_leading_zeroes() {
-        $this-&gt;assertEquals(&quot;00005&quot;, zeroise(5, 5));
-    }
-    function test_does_nothing_if_input_is_already_longer() {
-        $this-&gt;assertEquals(&quot;5000000&quot;, zeroise(5000000, 2));
-    }
-}
-
-class Test_Backslashit extends _WPFormattingTest {
-    function test_backslashes_alphas() {
-        $this-&gt;assertEquals(&quot;\\a943\\b\\c&quot;, backslashit(&quot;a943bc&quot;));
-    }
-    function test_double_backslashes_leading_numbers() {
-        $this-&gt;assertEquals(&quot;\\\\95&quot;, backslashit(&quot;95&quot;));
-    }
-}
-
-class Test_Untrailingslashit extends _WPFormattingTest {
-    function test_removes_trailing_slashes() {
-        $this-&gt;assertEquals(&quot;a&quot;, untrailingslashit(&quot;a/&quot;));
-        $this-&gt;assertEquals(&quot;a&quot;, untrailingslashit(&quot;a////&quot;));
-    }
-}
-
-class Test_Trailingslashit extends _WPFormattingTest {
-    function test_adds_trailing_slash() {
-        $this-&gt;assertEquals(&quot;a/&quot;, trailingslashit(&quot;a&quot;));
-    }
-    function test_does_not_add_trailing_slash_if_one_exists() {
-        $this-&gt;assertEquals(&quot;a/&quot;, trailingslashit(&quot;a/&quot;));
-    }
-}
-
-/*
</del><span class="cx"> Decodes text in RFC2047 &quot;Q&quot;-encoding, e.g.
</span><span class="cx"> 
</span><span class="cx">     =?iso-8859-1?q?this=20is=20some=20text?=
</span></span></pre></div>
<a id="wptestcasetest_includes_formattingphp"></a>
<div class="modfile"><h4>Modified: wp-testcase/test_includes_formatting.php (402 => 403)</h4>
<pre class="diff"><span>
<span class="info">--- wp-testcase/test_includes_formatting.php        2011-08-04 19:59:07 UTC (rev 402)
+++ wp-testcase/test_includes_formatting.php        2011-08-04 20:21:35 UTC (rev 403)
</span><span class="lines">@@ -821,4 +821,125 @@
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+class TestSanitizeTitle extends WPTestCase {
+    function test_strips_html() {
+        $input = &quot;Captain &lt;strong&gt;Awesome&lt;/strong&gt;&quot;;
+        $expected = &quot;captain-awesome&quot;;
+        $this-&gt;assertEquals($expected, sanitize_title($input));
+    }
+
+    function test_titles_sanitized_to_nothing_are_replaced_with_optional_fallback() {
+        $input = &quot;&lt;strong&gt;&lt;/strong&gt;&quot;;
+        $fallback = &quot;Captain Awesome&quot;;
+        $this-&gt;assertEquals($fallback, sanitize_title($input, $fallback));
+    }
+}
+
+class TestSanitizeTitleWithDashes extends WPTestCase {
+    function test_strips_html() {
+        $input = &quot;Captain &lt;strong&gt;Awesome&lt;/strong&gt;&quot;;
+        $expected = &quot;captain-awesome&quot;;
+        $this-&gt;assertEquals($expected, sanitize_title($input));
+    }
+
+    function test_strips_unencoded_percent_signs() {
+        $this-&gt;assertEquals(&quot;fran%c3%a7ois&quot;, sanitize_title_with_dashes(&quot;fran%c3%a7%ois&quot;));
+    }
+
+    function test_makes_title_lowercase() {
+        $this-&gt;assertEquals(&quot;abc&quot;, sanitize_title_with_dashes(&quot;ABC&quot;));
+    }
+
+    function test_replaces_any_amount_of_whitespace_with_one_hyphen() {
+        $this-&gt;assertEquals(&quot;a-t&quot;, sanitize_title_with_dashes(&quot;a          t&quot;));
+        $this-&gt;assertEquals(&quot;a-t&quot;, sanitize_title_with_dashes(&quot;a    \n\n\nt&quot;));
+    }
+
+    function test_replaces_any_number_of_hyphens_with_one_hyphen() {
+        $this-&gt;assertEquals(&quot;a-t-t&quot;, sanitize_title_with_dashes(&quot;a----t----t&quot;));
+    }
+
+    function test_trims_trailing_hyphens() {
+        $this-&gt;assertEquals(&quot;a-t-t&quot;, sanitize_title_with_dashes(&quot;a----t----t----&quot;));
+    }
+
+    function test_handles_non_entity_ampersands() {
+        $this-&gt;assertEquals(&quot;penn-teller-bull&quot;, sanitize_title_with_dashes(&quot;penn &amp; teller bull&quot;));
+    }
+}
+
+class TestConvertChars extends WPTestCase {
+    function test_replaces_windows1252_entities_with_unicode_ones() {
+        $input = &quot;&amp;#130;&amp;#131;&amp;#132;&amp;#133;&amp;#134;&amp;#135;&amp;#136;&amp;#137;&amp;#138;&amp;#139;&amp;#140;&amp;#145;&amp;#146;&amp;#147;&amp;#148;&amp;#149;&amp;#150;&amp;#151;&amp;#152;&amp;#153;&amp;#154;&amp;#155;&amp;#156;&amp;#159;&quot;;
+        $output = &quot;&amp;#8218;&amp;#402;&amp;#8222;&amp;#8230;&amp;#8224;&amp;#8225;&amp;#710;&amp;#8240;&amp;#352;&amp;#8249;&amp;#338;&amp;#8216;&amp;#8217;&amp;#8220;&amp;#8221;&amp;#8226;&amp;#8211;&amp;#8212;&amp;#732;&amp;#8482;&amp;#353;&amp;#8250;&amp;#339;&amp;#376;&quot;;
+        $this-&gt;assertEquals($output, convert_chars($input));
+    }
+
+    function test_converts_html_br_and_hr_to_the_xhtml_self_closing_variety() {
+        $inputs = array(
+            &quot;abc &lt;br&gt; lol &lt;br /&gt;&quot; =&gt; &quot;abc &lt;br /&gt; lol &lt;br /&gt;&quot;,
+            &quot;&lt;BR&gt; HO HO &lt;HR&gt;&quot;     =&gt; &quot;&lt;br /&gt; ho ho &lt;hr /&gt;&quot;,
+            &quot;&lt;hr&gt;&lt;br&gt;&quot;            =&gt; &quot;&lt;hr /&gt;&lt;br /&gt;&quot;
+            );
+        foreach ($inputs as $input =&gt; $expected) {
+            $this-&gt;assertEquals($expected, convert_chars($input));
+        }
+    }
+
+    function test_escapes_lone_ampersands() {
+        $this-&gt;assertEquals(&quot;at&amp;#038;t&quot;, convert_chars(&quot;at&amp;t&quot;));
+    }
+
+    function test_removes_category_and_title_metadata_tags() {
+        $this-&gt;assertEquals(&quot;&quot;, convert_chars(&quot;&lt;title&gt;&lt;div class='lol'&gt;abc&lt;/div&gt;&lt;/title&gt;&lt;category&gt;a&lt;/category&gt;&quot;));
+    }
+}
+
+class TestBalanceTags extends WPTestCase {
+    function test_adds_missing_end_tags() {
+        $this-&gt;assertEquals(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/i&gt;&lt;/b&gt;&quot;, balanceTags(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/b&gt;&quot;, true));
+    }
+
+    function test_fixes_simple_bad_nesting() {
+        $this-&gt;assertEquals(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/i&gt;&lt;/b&gt;&quot;, balanceTags(&quot;&lt;b&gt;&lt;i&gt;abc&lt;/b&gt;&lt;/i&gt;&quot;, true));
+    }
+}
+
+class TestZeroise extends WPTestCase {
+    function test_pads_with_leading_zeroes() {
+        $this-&gt;assertEquals(&quot;00005&quot;, zeroise(5, 5));
+    }
+
+    function test_does_nothing_if_input_is_already_longer() {
+        $this-&gt;assertEquals(&quot;5000000&quot;, zeroise(5000000, 2));
+    }
+}
+
+class TestBackslashit extends WPTestCase {
+    function test_backslashes_alphas() {
+        $this-&gt;assertEquals(&quot;\\a943\\b\\c&quot;, backslashit(&quot;a943bc&quot;));
+    }
+
+    function test_double_backslashes_leading_numbers() {
+        $this-&gt;assertEquals(&quot;\\\\95&quot;, backslashit(&quot;95&quot;));
+    }
+}
+
+class TestUntrailingslashit extends WPTestCase {
+    function test_removes_trailing_slashes() {
+        $this-&gt;assertEquals(&quot;a&quot;, untrailingslashit(&quot;a/&quot;));
+        $this-&gt;assertEquals(&quot;a&quot;, untrailingslashit(&quot;a////&quot;));
+    }
+}
+
+class TestTrailingslashit extends WPTestCase {
+    function test_adds_trailing_slash() {
+        $this-&gt;assertEquals(&quot;a/&quot;, trailingslashit(&quot;a&quot;));
+    }
+
+    function test_does_not_add_trailing_slash_if_one_exists() {
+        $this-&gt;assertEquals(&quot;a/&quot;, trailingslashit(&quot;a/&quot;));
+    }
+}
+
</ins><span class="cx"> ?&gt;
</span></span></pre>
</div>
</div>

</body>
</html>