WordPress.org

Make WordPress Core

Ticket #39140: 39140.patch

File 39140.patch, 3.3 KB (added by Toro_Unit, 10 months ago)

Unit Test.

  • package-lock.json

     
    1112811128                },
    1112911129                "onetime": {
    1113011130                        "version": "1.1.0",
    11131                         "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
     11131                        "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
    1113211132                        "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
    1113311133                        "dev": true
    1113411134                },
  • src/wp-includes/widgets/class-wp-widget-media-image.php

     
    6767                                'size'              => array(
    6868                                        'type'        => 'string',
    6969                                        'enum'        => array_merge( get_intermediate_image_sizes(), array( 'full', 'custom' ) ),
    70                                         'default'     => 'medium',
     70                                        'default'     => get_option( 'image_default_size', 'medium' ),
    7171                                        'description' => __( 'Size' ),
    7272                                ),
    7373                                'width'             => array( // Via 'customWidth', only when size=custom; otherwise via 'width'.
  • tests/phpunit/tests/query/taxQuery.php

     
    434434        }
    435435
    436436        /**
     437         * @ticket 39140
     438         */
     439        public function test_tax_query_single_query_multiple_hierarchical_terms_operator_and() {
     440                $europe = self::factory()->term->create(
     441                        array(
     442                                'taxonomy' => 'category',
     443                                'name'     => 'Europe',
     444                        )
     445                );
     446                $spain = self::factory()->term->create(
     447                        array(
     448                                'taxonomy' => 'category',
     449                                'name'     => 'Spain',
     450                                'parent'   => $europe,
     451                        )
     452                );
     453                $south_america = self::factory()->term->create(
     454                        array(
     455                                'taxonomy' => 'category',
     456                                'name'     => 'South America',
     457                        )
     458                );
     459                $argentina = self::factory()->term->create(
     460                        array(
     461                                'taxonomy' => 'category',
     462                                'name'     => 'Argentina',
     463                                'parent'   => $south_america,
     464                        )
     465                );
     466                $post_a = self::factory()->post->create( array( 'post_category' => array( $argentina ) ) );
     467                $post_b = self::factory()->post->create( array( 'post_category' => array( $spain ) ) );
     468                $post_c = self::factory()->post->create( array( 'post_category' => array( $argentina, $spain ) ) );
     469
     470                $posts = get_posts(
     471                        array(
     472                                'fields'                 => 'ids',
     473                                'update_post_meta_cache' => false,
     474                                'update_post_term_cache' => false,
     475                                'tax_query'              => array(
     476                                        array(
     477                                                'taxonomy' => 'category',
     478                                                'field'    => 'id',
     479                                                'terms'    => array( $argentina, $spain ),
     480                                                'operator' => 'AND'
     481                                        ),
     482                                ),
     483                        )
     484                );
     485
     486                $this->assertEquals( 1, count( $posts ) );
     487
     488                $posts = get_posts(
     489                        array(
     490                                'fields'                 => 'ids',
     491                                'update_post_meta_cache' => false,
     492                                'update_post_term_cache' => false,
     493                                'tax_query'              => array(
     494                                        array(
     495                                                'taxonomy' => 'category',
     496                                                'field'    => 'id',
     497                                                'terms'    => array( $europe, $south_america ),
     498                                                'operator' => 'AND'
     499                                        ),
     500                                ),
     501                        )
     502                );
     503
     504                $this->assertEquals( 1, count( $posts ) );
     505
     506        }
     507
     508        /**
    437509         * @ticket 29181
    438510         */
    439511        public function test_tax_query_operator_not_exists() {