wordpress-develop/tests/phpunit/tests/formatting/EscAttr.php
Scott Taylor 3d1f8f292a After [33148]:
Don't nest `esc_attr()` and `htmlspecialchars()` when escaping the post title on the edit post screen.

Unrevert parts of [32851] and [32850].

Adds/alters unit tests.

Props miqrogroove.
Fixes #17780.


git-svn-id: https://develop.svn.wordpress.org/trunk@33271 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-14 17:55:07 +00:00

33 lines
998 B
PHP

<?php
/**
* @group formatting
*/
class Tests_Formatting_EscAttr extends WP_UnitTestCase {
function test_esc_attr_quotes() {
$attr = '"double quotes"';
$this->assertEquals( '&quot;double quotes&quot;', esc_attr( $attr ) );
$attr = "'single quotes'";
$this->assertEquals( '&#039;single quotes&#039;', esc_attr( $attr ) );
$attr = "'mixed' " . '"quotes"';
$this->assertEquals( '&#039;mixed&#039; &quot;quotes&quot;', esc_attr( $attr ) );
// Handles double encoding?
$attr = '"double quotes"';
$this->assertEquals( '&quot;double quotes&quot;', esc_attr( esc_attr( $attr ) ) );
$attr = "'single quotes'";
$this->assertEquals( '&#039;single quotes&#039;', esc_attr( esc_attr( $attr ) ) );
$attr = "'mixed' " . '"quotes"';
$this->assertEquals( '&#039;mixed&#039; &quot;quotes&quot;', esc_attr( esc_attr( $attr ) ) );
}
function test_esc_attr_amp() {
$out = esc_attr( 'foo & bar &baz; &nbsp;' );
$this->assertEquals( "foo &amp; bar &amp;baz; &nbsp;", $out );
}
}