Make WordPress Core


Ignore:
Timestamp:
09/12/2013 02:47:58 PM (12 years ago)
Author:
wonderboymusic
Message:

There was way too much duplicated code in my notice cleanup, it built up over time, and there's definitely a need to standardize.

  • Remove duplicated code for deprecated function notice suppression
  • Add support in WP_UnitTestCase setUp/tearDown methods for $deprecated_functions fixture if the extending class has added it
  • Add a $deprecated_functions fixture to each extending class that needs it

To use this fixture, add something to your Test Case class like so:
protected $deprecated_functions = array( 'get_theme', 'get_themes', 'get_theme_data', 'get_current_theme' );

See #25282.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/image/functions.php

    r25380 r25402  
    77 */
    88class Tests_Image_Functions extends WP_UnitTestCase {
     9    protected $deprecated_functions = array( 'wp_load_image' );
     10
    911    /**
    1012     * Setup test fixture
     
    1820
    1921        include_once( DIR_TESTDATA . '/../includes/mock-image-editor.php' );
    20         add_action( 'deprecated_function_run', array( $this, 'deprecated_function_run' ) );
    21     }
    22 
    23     function tearDown() {
    24         parent::tearDown();
    25         remove_action( 'deprecated_function_run', array( $this, 'deprecated_function_run' ) );
    26     }
    27 
    28     function deprecated_function_run( $function ) {
    29         if ( in_array( $function, array( 'wp_load_image' ) ) )
    30             add_filter( 'deprecated_function_trigger_error', array( $this, 'deprecated_function_trigger_error' ) );
    31     }
    32 
    33     function deprecated_function_trigger_error() {
    34         remove_filter( 'deprecated_function_trigger_error', array( $this, 'deprecated_function_trigger_error' ) );
    35         return false;
    3622    }
    3723
Note: See TracChangeset for help on using the changeset viewer.