#23690 closed enhancement (fixed)
Allow plugin test bootstraps access to tests_add_filter() earlier
Reported by: | scribu | Owned by: | scribu |
---|---|---|---|
Milestone: | WordPress.org | Priority: | normal |
Severity: | normal | Version: | |
Component: | Unit Tests | Keywords: | |
Focuses: | Cc: |
Description (last modified by )
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( 'muplugins_loaded', function() { require __DIR__ . '/../my-plugin.php'; } ); require getenv( 'WP_TESTS_DIR' ) . '/includes/bootstrap.php';
Attachments (1)
Change History (3)
Note: See
TracTickets for help on using
tickets.
In 1232/tests: