wordpress-develop/tests/phpunit/tests/formatting/SanitizeUser.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

43 lines
1.2 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* @group formatting
*/
class Tests_Formatting_SanitizeUser extends WP_UnitTestCase {
function test_strips_html() {
$input = 'Captain <strong>Awesome</strong>';
$expected = is_multisite() ? 'captain awesome' : 'Captain Awesome';
$this->assertSame( $expected, sanitize_user( $input ) );
}
public function test_strips_encoded_ampersand() {
$expected = 'ATT';
// Multisite forces user logins to lowercase.
if ( is_multisite() ) {
$expected = strtolower( $expected );
}
$this->assertSame( $expected, sanitize_user( 'AT&amp;T' ) );
}
public function test_strips_encoded_ampersand_when_followed_by_semicolon() {
$expected = 'ATT Test;';
// Multisite forces user logins to lowercase.
if ( is_multisite() ) {
$expected = strtolower( $expected );
}
$this->assertSame( $expected, sanitize_user( 'AT&amp;T Test;' ) );
}
function test_strips_percent_encoded_octets() {
$expected = is_multisite() ? 'franois' : 'Franois';
$this->assertSame( $expected, sanitize_user( 'Fran%c3%a7ois' ) );
}
function test_optional_strict_mode_reduces_to_safe_ascii_subset() {
$this->assertSame( 'abc', sanitize_user( '()~ab~ˆcˆ!', true ) );
}
}