General: Avoid counting uncountable values when reading theme directories, and in some unit tests.

See #40109


git-svn-id: https://develop.svn.wordpress.org/trunk@41174 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
John Blackbourn 2017-07-27 16:59:36 +00:00
parent c880ed1c97
commit e0dd90123d
3 changed files with 9 additions and 5 deletions

View File

@ -35,7 +35,7 @@ function wp_get_themes( $args = array() ) {
$theme_directories = search_theme_directories();
if ( count( $wp_theme_directories ) > 1 ) {
if ( is_array( $wp_theme_directories ) && count( $wp_theme_directories ) > 1 ) {
// Make sure the current theme wins out, in case search_theme_directories() picks the wrong
// one in the case of a conflict. (Normally, last registered theme root wins.)
$current_theme = get_stylesheet();
@ -627,8 +627,9 @@ function get_theme_root_uri( $stylesheet_or_template = false, $theme_root = fals
function get_raw_theme_root( $stylesheet_or_template, $skip_cache = false ) {
global $wp_theme_directories;
if ( count($wp_theme_directories) <= 1 )
if ( ! is_array( $wp_theme_directories ) || count( $wp_theme_directories ) <= 1 ) {
return '/themes';
}
$theme_root = false;

View File

@ -423,7 +423,8 @@ class Tests_Post_Types extends WP_UnitTestCase {
'public' => true,
) );
$this->assertSame( 1, count( $wp_filter['future_foo'] ) );
$this->assertArrayHasKey( 'future_foo', $wp_filter );
$this->assertSame( 1, count( $wp_filter['future_foo']->callbacks ) );
$this->assertTrue( unregister_post_type( 'foo' ) );
$this->assertArrayNotHasKey( 'future_foo', $wp_filter );
}
@ -439,7 +440,8 @@ class Tests_Post_Types extends WP_UnitTestCase {
'register_meta_box_cb' => '__return_empty_string',
) );
$this->assertSame( 1, count( $wp_filter['add_meta_boxes_foo'] ) );
$this->assertArrayHasKey( 'add_meta_boxes_foo', $wp_filter );
$this->assertSame( 1, count( $wp_filter['add_meta_boxes_foo']->callbacks ) );
$this->assertTrue( unregister_post_type( 'foo' ) );
$this->assertArrayNotHasKey( 'add_meta_boxes_foo', $wp_filter );
}

View File

@ -764,7 +764,8 @@ class Tests_Taxonomy extends WP_UnitTestCase {
register_taxonomy( 'foo', 'post' );
$this->assertSame( 1, count( $wp_filter['wp_ajax_add-foo'] ) );
$this->assertArrayHasKey( 'wp_ajax_add-foo', $wp_filter );
$this->assertSame( 1, count( $wp_filter['wp_ajax_add-foo']->callbacks ) );
$this->assertTrue( unregister_taxonomy( 'foo' ) );
$this->assertArrayNotHasKey( 'wp_ajax_add-foo', $wp_filter );
}