wordpress-develop/tests/phpunit/tests/formatting/EscAttr.php
Sergey Biryukov 164b22cf6a Tests: First pass at using assertSame() instead of assertEquals() in most of the unit tests.
This ensures that not only the return values match the expected results, but also that their type is the same.

Going forward, stricter type checking by using `assertSame()` should generally be preferred to `assertEquals()` where appropriate, to make the tests more reliable.

Props johnbillion, jrf, SergeyBiryukov.
See #38266.

git-svn-id: https://develop.svn.wordpress.org/trunk@48937 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-02 00:35:36 +00:00

33 lines
984 B
PHP

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