Properly set $subdomain_error
to false
when applicable in ms_subdomain_constants()
. This was previously untestable because it used static vars: use globals instead.
Adds unit test. Fixes #28697. git-svn-id: https://develop.svn.wordpress.org/trunk@29200 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
8a5d825fac
commit
bda6f0cffe
@ -114,17 +114,20 @@ function ms_file_constants() {
|
||||
* we will have translations loaded and can trigger warnings easily.
|
||||
*
|
||||
* @since 3.0.0
|
||||
*
|
||||
* @global boolean $subdomain_error
|
||||
* @global boolean $subdomain_error_warn
|
||||
*/
|
||||
function ms_subdomain_constants() {
|
||||
static $error = null;
|
||||
static $error_warn = false;
|
||||
global $subdomain_error, $subdomain_error_warn;
|
||||
|
||||
if ( false === $error )
|
||||
if ( false === $subdomain_error ) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ( $error ) {
|
||||
if ( $subdomain_error ) {
|
||||
$vhost_deprecated = __( 'The constant <code>VHOST</code> <strong>is deprecated</strong>. Use the boolean constant <code>SUBDOMAIN_INSTALL</code> in wp-config.php to enable a subdomain configuration. Use is_subdomain_install() to check whether a subdomain configuration is enabled.' );
|
||||
if ( $error_warn ) {
|
||||
if ( $subdomain_error_warn ) {
|
||||
trigger_error( __( '<strong>Conflicting values for the constants VHOST and SUBDOMAIN_INSTALL.</strong> The value of SUBDOMAIN_INSTALL will be assumed to be your subdomain configuration setting.' ) . ' ' . $vhost_deprecated, E_USER_WARNING );
|
||||
} else {
|
||||
_deprecated_argument( 'define()', '3.0', $vhost_deprecated );
|
||||
@ -133,17 +136,18 @@ function ms_subdomain_constants() {
|
||||
}
|
||||
|
||||
if ( defined( 'SUBDOMAIN_INSTALL' ) && defined( 'VHOST' ) ) {
|
||||
if ( SUBDOMAIN_INSTALL == ( 'yes' == VHOST ) ) {
|
||||
$error = true;
|
||||
} else {
|
||||
$error = $error_warn = true;
|
||||
$subdomain_error = true;
|
||||
if ( SUBDOMAIN_INSTALL !== ( 'yes' == VHOST ) ) {
|
||||
$subdomain_error_warn = true;
|
||||
}
|
||||
} elseif ( defined( 'SUBDOMAIN_INSTALL' ) ) {
|
||||
$subdomain_error = false;
|
||||
define( 'VHOST', SUBDOMAIN_INSTALL ? 'yes' : 'no' );
|
||||
} elseif ( defined( 'VHOST' ) ) {
|
||||
$error = true;
|
||||
$subdomain_error = true;
|
||||
define( 'SUBDOMAIN_INSTALL', 'yes' == VHOST );
|
||||
} else {
|
||||
$subdomain_error = false;
|
||||
define( 'SUBDOMAIN_INSTALL', false );
|
||||
define( 'VHOST', 'no' );
|
||||
}
|
||||
|
@ -25,6 +25,17 @@ class Tests_MS extends WP_UnitTestCase {
|
||||
$wpdb->suppress_errors( $this->suppress );
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 28697
|
||||
*/
|
||||
function test_ms_subdomain_constants() {
|
||||
global $subdomain_error;
|
||||
|
||||
$this->assertFalse( $subdomain_error );
|
||||
ms_subdomain_constants();
|
||||
$this->assertFalse( $subdomain_error );
|
||||
}
|
||||
|
||||
function test_remove_user_from_blog() {
|
||||
$user1 = $this->factory->user->create_and_get();
|
||||
$user2 = $this->factory->user->create_and_get();
|
||||
|
Loading…
Reference in New Issue
Block a user