| | 101 | |
| | 102 | /** |
| | 103 | * wpautop() Should not add <p> and <br/> around <source> and <track> |
| | 104 | * |
| | 105 | * @ticket 26864 |
| | 106 | */ |
| | 107 | public function test_source_track_elements() { |
| | 108 | $content = "Paragraph one.\n\n" . |
| | 109 | '<video class="wp-video-shortcode" id="video-0-1" width="640" height="360" preload="metadata" controls="controls"> |
| | 110 | <source type="video/mp4" src="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4" /> |
| | 111 | <!-- WebM/VP8 for Firefox4, Opera, and Chrome --> |
| | 112 | <source type="video/webm" src="myvideo.webm" /> |
| | 113 | <!-- Ogg/Vorbis for older Firefox and Opera versions --> |
| | 114 | <source type="video/ogg" src="myvideo.ogv" /> |
| | 115 | <!-- Optional: Add subtitles for each language --> |
| | 116 | <track kind="subtitles" src="subtitles.srt" srclang="en" /> |
| | 117 | <!-- Optional: Add chapters --> |
| | 118 | <track kind="chapters" src="chapters.srt" srclang="en" /> |
| | 119 | <a href="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4">http://domain.tld/wp-content/uploads/2013/12/xyz.mp4</a> |
| | 120 | </video>' . |
| | 121 | "\n\nParagraph two."; |
| | 122 | |
| | 123 | $content2 = "Paragraph one.\n\n" . |
| | 124 | '<video class="wp-video-shortcode" id="video-0-1" width="640" height="360" preload="metadata" controls="controls"> |
| | 125 | |
| | 126 | <source type="video/mp4" src="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4" /> |
| | 127 | |
| | 128 | <!-- WebM/VP8 for Firefox4, Opera, and Chrome --> |
| | 129 | <source type="video/webm" src="myvideo.webm" /> |
| | 130 | |
| | 131 | <!-- Ogg/Vorbis for older Firefox and Opera versions --> |
| | 132 | <source type="video/ogg" src="myvideo.ogv" /> |
| | 133 | |
| | 134 | <!-- Optional: Add subtitles for each language --> |
| | 135 | <track kind="subtitles" src="subtitles.srt" srclang="en" /> |
| | 136 | |
| | 137 | <!-- Optional: Add chapters --> |
| | 138 | <track kind="chapters" src="chapters.srt" srclang="en" /> |
| | 139 | |
| | 140 | <a href="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4">http://domain.tld/wp-content/uploads/2013/12/xyz.mp4</a> |
| | 141 | |
| | 142 | </video>' . |
| | 143 | "\n\nParagraph two."; |
| | 144 | |
| | 145 | $content3 = "Paragraph one.\n\n" . |
| | 146 | '<video class="wp-video-shortcode" id="video-0-1" width="640" height="360" preload="metadata" controls="controls"> |
| | 147 | <source type="video/mp4" src="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4" /> |
| | 148 | |
| | 149 | <!-- WebM/VP8 for Firefox4, Opera, and Chrome --><source type="video/webm" src="myvideo.webm" /> |
| | 150 | <!-- Ogg/Vorbis for older Firefox and Opera versions --><source type="video/ogg" src="myvideo.ogv" /> |
| | 151 | <!-- Optional: Add subtitles for each language --><track kind="subtitles" src="subtitles.srt" srclang="en" /> |
| | 152 | <!-- Optional: Add chapters --><track kind="chapters" src="chapters.srt" srclang="en" /> |
| | 153 | |
| | 154 | <a href="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4">http://domain.tld/wp-content/uploads/2013/12/xyz.mp4</a> |
| | 155 | </video>' . |
| | 156 | "\n\nParagraph two."; |
| | 157 | |
| | 158 | $expected = "<p>Paragraph one.</p>\n" . // line breaks only after <p> |
| | 159 | '<p><video class="wp-video-shortcode" id="video-0-1" width="640" height="360" preload="metadata" controls="controls">' . |
| | 160 | '<source type="video/mp4" src="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4" />' . |
| | 161 | '<!-- WebM/VP8 for Firefox4, Opera, and Chrome -->' . |
| | 162 | '<source type="video/webm" src="myvideo.webm" />' . |
| | 163 | '<!-- Ogg/Vorbis for older Firefox and Opera versions -->' . |
| | 164 | '<source type="video/ogg" src="myvideo.ogv" />' . |
| | 165 | '<!-- Optional: Add subtitles for each language -->' . |
| | 166 | '<track kind="subtitles" src="subtitles.srt" srclang="en" />' . |
| | 167 | '<!-- Optional: Add chapters -->' . |
| | 168 | '<track kind="chapters" src="chapters.srt" srclang="en" />' . |
| | 169 | '<a href="http://domain.tld/wp-content/uploads/2013/12/xyz.mp4">' . |
| | 170 | "http://domain.tld/wp-content/uploads/2013/12/xyz.mp4</a></video></p>\n" . |
| | 171 | '<p>Paragraph two.</p>'; |
| | 172 | |
| | 173 | $this->assertEquals( $expected, trim( wpautop( $content ) ) ); |
| | 174 | $this->assertEquals( $expected, trim( wpautop( $content2 ) ) ); |
| | 175 | $this->assertEquals( $expected, trim( wpautop( $content3 ) ) ); |
| | 176 | } |
| | 177 | |
| | 178 | /** |
| | 179 | * wpautop() Should not add <p> and <br/> around <param> and <embed> |
| | 180 | * |
| | 181 | * @ticket 26864 |
| | 182 | */ |
| | 183 | public function test_param_embed_elements() { |
| | 184 | $content1 = ' |
| | 185 | Paragraph one. |
| | 186 | |
| | 187 | <object width="400" height="224" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"> |
| | 188 | <param name="src" value="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" /> |
| | 189 | <param name="allowfullscreen" value="true" /> |
| | 190 | <param name="allowscriptaccess" value="always" /> |
| | 191 | <param name="overstretch" value="true" /> |
| | 192 | <param name="flashvars" value="isDynamicSeeking=true" /> |
| | 193 | |
| | 194 | <embed width="400" height="224" type="application/x-shockwave-flash" src="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" wmode="direct" seamlesstabbing="true" allowfullscreen="true" overstretch="true" flashvars="isDynamicSeeking=true" /> |
| | 195 | </object> |
| | 196 | |
| | 197 | Paragraph two.'; |
| | 198 | |
| | 199 | $expected1 = "<p>Paragraph one.</p>\n" . // line breaks only after <p> |
| | 200 | '<p><object width="400" height="224" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0">' . |
| | 201 | '<param name="src" value="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" />' . |
| | 202 | '<param name="allowfullscreen" value="true" />' . |
| | 203 | '<param name="allowscriptaccess" value="always" />' . |
| | 204 | '<param name="overstretch" value="true" />' . |
| | 205 | '<param name="flashvars" value="isDynamicSeeking=true" />' . |
| | 206 | '<embed width="400" height="224" type="application/x-shockwave-flash" src="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" wmode="direct" seamlesstabbing="true" allowfullscreen="true" overstretch="true" flashvars="isDynamicSeeking=true" />' . |
| | 207 | "</object></p>\n" . |
| | 208 | '<p>Paragraph two.</p>'; |
| | 209 | |
| | 210 | $content2 = ' |
| | 211 | Paragraph one. |
| | 212 | |
| | 213 | <div class="video-player" id="x-video-0"> |
| | 214 | <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="640" height="360" id="video-0" standby="Standby text"> |
| | 215 | <param name="movie" value="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" /> |
| | 216 | <param name="quality" value="best" /> |
| | 217 | |
| | 218 | <param name="seamlesstabbing" value="true" /> |
| | 219 | <param name="allowfullscreen" value="true" /> |
| | 220 | <param name="allowscriptaccess" value="always" /> |
| | 221 | <param name="overstretch" value="true" /> |
| | 222 | |
| | 223 | <!--[if !IE]--><object type="application/x-shockwave-flash" data="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" width="640" height="360" standby="Standby text"> |
| | 224 | <param name="quality" value="best" /> |
| | 225 | |
| | 226 | <param name="seamlesstabbing" value="true" /> |
| | 227 | <param name="allowfullscreen" value="true" /> |
| | 228 | <param name="allowscriptaccess" value="always" /> |
| | 229 | <param name="overstretch" value="true" /> |
| | 230 | </object><!--<![endif]--> |
| | 231 | </object></div> |
| | 232 | |
| | 233 | Paragraph two.'; |
| | 234 | |
| | 235 | $expected2 = "<p>Paragraph one.</p>\n" . // line breaks only after block tags |
| | 236 | '<div class="video-player" id="x-video-0">' . "\n" . |
| | 237 | '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="640" height="360" id="video-0" standby="Standby text">' . |
| | 238 | '<param name="movie" value="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" />' . |
| | 239 | '<param name="quality" value="best" />' . |
| | 240 | '<param name="seamlesstabbing" value="true" />' . |
| | 241 | '<param name="allowfullscreen" value="true" />' . |
| | 242 | '<param name="allowscriptaccess" value="always" />' . |
| | 243 | '<param name="overstretch" value="true" />' . |
| | 244 | '<!--[if !IE]--><object type="application/x-shockwave-flash" data="http://domain.tld/wp-content/uploads/2013/12/xyz.swf" width="640" height="360" standby="Standby text">' . |
| | 245 | '<param name="quality" value="best" />' . |
| | 246 | '<param name="seamlesstabbing" value="true" />' . |
| | 247 | '<param name="allowfullscreen" value="true" />' . |
| | 248 | '<param name="allowscriptaccess" value="always" />' . |
| | 249 | '<param name="overstretch" value="true" /></object><!--<![endif]-->' . |
| | 250 | "</object></div>\n" . |
| | 251 | '<p>Paragraph two.</p>'; |
| | 252 | |
| | 253 | $this->assertEquals( $expected1, trim( wpautop( $content1 ) ) ); |
| | 254 | $this->assertEquals( $expected2, trim( wpautop( $content2 ) ) ); |
| | 255 | } |