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

47 lines
1.1 KiB
PHP

<?php
/**
* @group formatting
* @ticket 22300
*/
class Tests_Formatting_UrlencodeDeep extends WP_UnitTestCase {
/**
* Data Provider
*/
public function data_test_values() {
return array(
array( 'qwerty123456', 'qwerty123456' ),
array( '|!"£$%&/()=?', '%7C%21%22%C2%A3%24%25%26%2F%28%29%3D%3F' ),
array( '^é*ç°§;:_-.,', '%5E%C3%A9%2A%C3%A7%C2%B0%C2%A7%3B%3A_-.%2C' ),
array( 'abc123 @#[]€', 'abc123+%40%23%5B%5D%E2%82%AC' ),
array( 'abc123 @#[]€', urlencode( 'abc123 @#[]€' ) ),
);
}
/**
* Validate the urlencode_deep function pair by pair
*
* @dataProvider data_test_values
*
* @param string $actual
* @param string $expected
*/
public function test_urlencode_deep_should_encode_individual_value( $actual, $expected ) {
$this->assertSame( $expected, urlencode_deep( $actual ) );
}
/**
* Test the whole array as input
*/
public function test_urlencode_deep_should_encode_all_values_in_array() {
$data = $this->data_test_values();
$actual = wp_list_pluck( $data, 0 );
$expected = wp_list_pluck( $data, 1 );
$this->assertSame( $expected, urlencode_deep( $actual ) );
}
}