WordPress.org

Make WordPress Core

Ticket #25706: 25706.diff

File 25706.diff, 1.3 KB (added by ericlewis, 6 years ago)
  • src/wp-includes/category-template.php

     
    232232 * @return bool True if the current post is in any of the given categories.
    233233 */
    234234function in_category( $category, $post = null ) {
     235        if ( empty( $category ) )
     236                return false;
     237
    235238        return has_category( $category, $post );
    236239}
    237240
  • tests/phpunit/tests/taxonomy.php

     
    152152                _unregister_post_type( $post_type );
    153153
    154154        }
     155        /**
     156         * @ticket 25706
     157         */
     158        function test_in_category() {
     159                $post = $this->factory->post->create_and_get();
     160
     161                // in_category() returns false when first parameter is empty()
     162                $this->assertFalse( in_category( '', $post ) );
     163                $this->assertFalse( in_category( false, $post ) );
     164                $this->assertFalse( in_category( null, $post ) );
     165
     166                // Test expected behavior of in_category()
     167                $term = wp_insert_term( 'Test', 'category' );
     168                wp_set_object_terms( $post->ID, $term['term_id'], 'category' );
     169                $this->assertTrue( in_category( $term['term_id'], $post ) );
     170        }
    155171}