[wp-trac] [WordPress Trac] #23690: Allow plugin test bootstraps access to tests_add_filter() earlier

WordPress Trac noreply at wordpress.org
Mon Mar 4 18:15:07 UTC 2013


#23690: Allow plugin test bootstraps access to tests_add_filter() earlier
---------------------------+-------------------------
 Reporter:  scribu         |       Type:  enhancement
   Status:  new            |   Priority:  normal
Milestone:  WordPress.org  |  Component:  Unit Tests
  Version:                 |   Severity:  normal
 Keywords:                 |
---------------------------+-------------------------
 Currently, plugins that have their own unit tests have a bootstrap.php
 file that looks like this:

 {{{
 <?php

 $GLOBALS['wp_tests_options'] = array(
     'active_plugins' => array( basename( dirname( dirname( __FILE__ ) ) )
 . '/my-plugin.php' ),
 );

 require getenv( 'WP_TESTS_DIR' ) . '/includes/bootstrap.php';
 }}}

 The problem is that the plugin folder needs to be inside `WP_CONTENT_DIR .
 '/plugins/'`, which is an artificial requirement.

 The bootstrap file could just `require()` the plugin file themselves and
 everything will work, *except* for one thing: hooks such as
 'plugins_loaded' or 'init'.

 With the attached patch, the file could look like this:

 {{{
 <?php

 require_once getenv( 'WP_TESTS_DIR' ) . '/includes/functions.php';

 tests_add_filter( 'plugins_loaded', function() {
         require __DIR__ . '/../my-plugin.php';
 }, 0 );

 require getenv( 'WP_TESTS_DIR' ) . '/includes/bootstrap.php';
 }}}

-- 
Ticket URL: <http://core.trac.wordpress.org/ticket/23690>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software


More information about the wp-trac mailing list