Avoid polluted $table_prefix
and $_wp_switched_stack
in multisite unit tests.
Add `WP_TESTS_TABLE_PREFIX` in `bootstrap.php` to ensure the original value for `$table_prefix` is always available. Props jeremyfelt. Fixes #28692. git-svn-id: https://develop.svn.wordpress.org/trunk@28943 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
99d75b6acb
commit
9ab7f4b144
@ -23,6 +23,7 @@ if ( !is_readable( $config_file_path ) ) {
|
|||||||
}
|
}
|
||||||
require_once $config_file_path;
|
require_once $config_file_path;
|
||||||
|
|
||||||
|
define( 'WP_TESTS_TABLE_PREFIX', $table_prefix );
|
||||||
define( 'DIR_TESTDATA', dirname( __FILE__ ) . '/../data' );
|
define( 'DIR_TESTDATA', dirname( __FILE__ ) . '/../data' );
|
||||||
|
|
||||||
if ( ! defined( 'WP_TESTS_FORCE_KNOWN_BUGS' ) )
|
if ( ! defined( 'WP_TESTS_FORCE_KNOWN_BUGS' ) )
|
||||||
|
@ -35,6 +35,11 @@ class WP_UnitTestCase extends PHPUnit_Framework_TestCase {
|
|||||||
global $wpdb, $wp_query, $post;
|
global $wpdb, $wp_query, $post;
|
||||||
$this->expectedDeprecated();
|
$this->expectedDeprecated();
|
||||||
$wpdb->query( 'ROLLBACK' );
|
$wpdb->query( 'ROLLBACK' );
|
||||||
|
if ( is_multisite() ) {
|
||||||
|
while ( ms_is_switched() ) {
|
||||||
|
restore_current_blog();
|
||||||
|
}
|
||||||
|
}
|
||||||
$wp_query = new WP_Query();
|
$wp_query = new WP_Query();
|
||||||
$post = null;
|
$post = null;
|
||||||
remove_theme_support( 'html5' );
|
remove_theme_support( 'html5' );
|
||||||
|
@ -1510,8 +1510,9 @@ class Tests_MS extends WP_UnitTestCase {
|
|||||||
* @param string $path REQUEST_URI of the boot strap request.
|
* @param string $path REQUEST_URI of the boot strap request.
|
||||||
*/
|
*/
|
||||||
function _setup_host_request( $domain, $path ) {
|
function _setup_host_request( $domain, $path ) {
|
||||||
global $current_site, $current_blog, $wpdb, $table_prefix;
|
global $current_site, $current_blog, $table_prefix;
|
||||||
|
|
||||||
|
$table_prefix = WP_TESTS_TABLE_PREFIX;
|
||||||
$current_site = $current_blog = null;
|
$current_site = $current_blog = null;
|
||||||
$_SERVER['HTTP_HOST'] = $domain;
|
$_SERVER['HTTP_HOST'] = $domain;
|
||||||
$_SERVER['REQUEST_URI'] = $path;
|
$_SERVER['REQUEST_URI'] = $path;
|
||||||
|
Loading…
Reference in New Issue
Block a user