diff --git a/tests/phpunit/includes/abstract-testcase.php b/tests/phpunit/includes/abstract-testcase.php index 3a9031d11b..be836f6707 100644 --- a/tests/phpunit/includes/abstract-testcase.php +++ b/tests/phpunit/includes/abstract-testcase.php @@ -452,11 +452,16 @@ abstract class WP_UnitTestCase_Base extends PHPUnit_Adapter_TestCase { /** * Throws an exception when called. * - * @throws WPDieException Exception containing the message. + * @since UT (3.7.0) + * @since 5.9.0 Added the `$title` and `$args` parameters. * - * @param string $message The `wp_die()` message. + * @throws WPDieException Exception containing the message and the response code. + * + * @param string|WP_Error $message The `wp_die()` message or WP_Error object. + * @param string $title The `wp_die()` title. + * @param string|array $args The `wp_die()` arguments. */ - public function wp_die_handler( $message ) { + public function wp_die_handler( $message, $title, $args ) { if ( is_wp_error( $message ) ) { $message = $message->get_error_message(); } @@ -465,7 +470,12 @@ abstract class WP_UnitTestCase_Base extends PHPUnit_Adapter_TestCase { $message = '0'; } - throw new WPDieException( $message ); + $code = 0; + if ( isset( $args['response'] ) ) { + $code = $args['response']; + } + + throw new WPDieException( $message, $code ); } /** diff --git a/tests/phpunit/tests/functions/wpNonceAys.php b/tests/phpunit/tests/functions/wpNonceAys.php new file mode 100644 index 0000000000..06b807da42 --- /dev/null +++ b/tests/phpunit/tests/functions/wpNonceAys.php @@ -0,0 +1,34 @@ +expectException( 'WPDieException' ); + $this->expectExceptionMessage( 'The link you followed has expired.' ); + $this->expectExceptionCode( 403 ); + + wp_nonce_ays( 'random_string' ); + } + + /** + * @ticket 53882 + */ + public function test_wp_nonce_ays_log_out() { + $this->expectException( 'WPDieException' ); + $this->expectExceptionMessageMatches( '#You are attempting to log out of Test Blog

Do you really want to log out\?#m' ); + $this->expectExceptionCode( 403 ); + + wp_nonce_ays( 'log-out' ); + } +}