Build/Test tools: In Travis, skip some tests when not on trunk.
This skips time sensitive tests (copyright year and PHP/MySQL version requirements) when tests are run on branches on Travis. Props netweb, jorbin Fixes #39486 git-svn-id: https://develop.svn.wordpress.org/trunk@40241 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
0060ffaa8c
commit
74e02a21b8
@ -176,6 +176,27 @@ class WP_UnitTestCase extends PHPUnit_Framework_TestCase {
|
||||
self::flush_cache();
|
||||
}
|
||||
|
||||
/**
|
||||
* Allow tests to be skipped on some automated runs
|
||||
*
|
||||
* For test runs on Travis for something other than trunk/master
|
||||
* we want to skip tests that only need to run for master.
|
||||
*/
|
||||
public function skipOnAutomatedBranches() {
|
||||
// gentenv can be disabled
|
||||
if ( ! function_exists( 'getenv' ) ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// https://docs.travis-ci.com/user/environment-variables/#Default-Environment-Variables
|
||||
$travis_branch = getenv( 'TRAVIS_BRANCH' );
|
||||
$travis_pull_request = getenv( 'TRAVIS_PULL_REQUEST' );
|
||||
|
||||
if ( false !== $travis_pull_request && 'master' !== $travis_branch ) {
|
||||
$this->markTestSkipped( 'For automated test runs, this test is only run on trunk/master' );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregister existing post types and register defaults.
|
||||
*
|
||||
|
@ -8,6 +8,9 @@
|
||||
class Tests_Basic extends WP_UnitTestCase {
|
||||
|
||||
function test_license() {
|
||||
// This test is designed to only run on trunk/master
|
||||
$this->skipOnAutomatedBranches();
|
||||
|
||||
$license = file_get_contents( ABSPATH . 'license.txt' );
|
||||
preg_match( '#Copyright 2011-(\d+) by the contributors#', $license, $matches );
|
||||
$this_year = date( 'Y' );
|
||||
|
@ -5,6 +5,9 @@
|
||||
class Tests_External_HTTP_Basic extends WP_UnitTestCase {
|
||||
|
||||
function test_readme() {
|
||||
// This test is designed to only run on trunk/master
|
||||
$this->skipOnAutomatedBranches();
|
||||
|
||||
$readme = file_get_contents( ABSPATH . 'readme.html' );
|
||||
|
||||
preg_match( '#Recommendations.*PHP</a> version <strong>([0-9.]*)#s', $readme, $matches );
|
||||
|
Loading…
Reference in New Issue
Block a user