Make WordPress Core


Ignore:
Timestamp:
10/16/2015 09:04:12 PM (11 years ago)
Author:
wonderboymusic
Message:

Unit Tests: one $factory to rule them all, and it shall be static.

Using more than one instance of WP_UnitTest_Factory causes all kinds of craziness, due to out-of-sync internal generator sequences. Since we want to use setUpBeforeClass, we were creating ad hoc instances. To avoid that, we were injecting one static instance via Dependency Injection in wpSetUpBeforeClass. All tests should really use the static instance, so we will remove the instance prop $factory.

Replace $this->factory with self::$factory over 2000 times.
Rewrite all of the tests that were hard-coding dynamic values.

#YOLOFriday

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/oembed/getResponseData.php

    r34903 r35225  
    1010
    1111        function test_get_oembed_response_data() {
    12                 $post = $this->factory->post->create_and_get( array(
     12                $post = self::$factory->post->create_and_get( array(
    1313                        'post_title' => 'Some Post',
    1414                ) );
     
    3434         */
    3535        function test_get_oembed_response_data_author() {
    36                 $user_id = $this->factory->user->create( array(
     36                $user_id = self::$factory->user->create( array(
    3737                        'display_name' => 'John Doe',
    3838                ) );
    3939
    40                 $post = $this->factory->post->create_and_get( array(
     40                $post = self::$factory->post->create_and_get( array(
    4141                        'post_title'  => 'Some Post',
    4242                        'post_author' => $user_id,
     
    6262                remove_filter( 'oembed_response_data', 'get_oembed_response_data_rich' );
    6363
    64                 $post = $this->factory->post->create_and_get( array(
     64                $post = self::$factory->post->create_and_get( array(
    6565                        'post_title' => 'Some Post',
    6666                ) );
     
    8282
    8383        function test_get_oembed_response_data_with_draft_post() {
    84                 $post = $this->factory->post->create_and_get( array(
     84                $post = self::$factory->post->create_and_get( array(
    8585                        'post_status' => 'draft',
    8686                ) );
     
    9090
    9191        function test_get_oembed_response_data_with_scheduled_post() {
    92                 $post = $this->factory->post->create_and_get( array(
     92                $post = self::$factory->post->create_and_get( array(
    9393                        'post_status' => 'future',
    9494                        'post_date'   => strftime( '%Y-%m-%d %H:%M:%S', strtotime( '+1 day' ) ),
     
    9999
    100100        function test_get_oembed_response_data_with_private_post() {
    101                 $post = $this->factory->post->create_and_get( array(
     101                $post = self::$factory->post->create_and_get( array(
    102102                        'post_status' => 'private',
    103103                ) );
     
    107107
    108108        function test_get_oembed_response_data_maxwidth_too_high() {
    109                 $post = $this->factory->post->create_and_get();
     109                $post = self::$factory->post->create_and_get();
    110110
    111111                $data = get_oembed_response_data( $post, 1000 );
     
    116116
    117117        function test_get_oembed_response_data_maxwidth_too_low() {
    118                 $post = $this->factory->post->create_and_get();
     118                $post = self::$factory->post->create_and_get();
    119119
    120120                $data = get_oembed_response_data( $post, 100 );
     
    125125
    126126        function test_get_oembed_response_data_maxwidth_invalid() {
    127                 $post = $this->factory->post->create_and_get();
     127                $post = self::$factory->post->create_and_get();
    128128
    129129                $data = get_oembed_response_data( $post, '400;" DROP TABLES' );
     
    139139
    140140        function test_get_oembed_response_data_with_thumbnail() {
    141                 $post          = $this->factory->post->create_and_get();
     141                $post          = self::$factory->post->create_and_get();
    142142                $file          = DIR_TESTDATA . '/images/canola.jpg';
    143                 $attachment_id = $this->factory->attachment->create_object( $file, $post->ID, array(
     143                $attachment_id = self::$factory->attachment->create_object( $file, $post->ID, array(
    144144                        'post_mime_type' => 'image/jpeg',
    145145                ) );
     
    155155
    156156        function test_get_oembed_response_data_for_attachment() {
    157                 $parent = $this->factory->post->create();
     157                $parent = self::$factory->post->create();
    158158                $file   = DIR_TESTDATA . '/images/canola.jpg';
    159                 $post   = $this->factory->attachment->create_object( $file, $parent, array(
     159                $post   = self::$factory->attachment->create_object( $file, $parent, array(
    160160                        'post_mime_type' => 'image/jpeg',
    161161                ) );
Note: See TracChangeset for help on using the changeset viewer.