Skip to content

Commit f7a7025

Browse files
Build/Test Tools: Revert [51602] for now to investigate test failures on PHPUnit < 7.0.
See #46149. git-svn-id: https://develop.svn.wordpress.org/trunk@51603 602fd350-edb4-49c9-b593-d223f7449a82
1 parent 7a6dbf5 commit f7a7025

File tree

1 file changed

+46
-2
lines changed

1 file changed

+46
-2
lines changed

tests/phpunit/includes/abstract-testcase.php

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -888,11 +888,54 @@ public function go_to( $url ) {
888888
*
889889
* This is a custom extension of the PHPUnit requirements handling.
890890
*
891+
* Contains legacy code for skipping tests that are associated with an open Trac ticket.
892+
* Core tests no longer support this behaviour.
893+
*
891894
* @since 3.5.0
892-
* @deprecated 5.9.0 This method has not been functional since PHPUnit 7.0.
893895
*/
894896
protected function checkRequirements() {
895-
return;
897+
parent::checkRequirements();
898+
899+
$annotations = $this->getAnnotations();
900+
901+
$groups = array();
902+
if ( ! empty( $annotations['class']['group'] ) ) {
903+
$groups = array_merge( $groups, $annotations['class']['group'] );
904+
}
905+
if ( ! empty( $annotations['method']['group'] ) ) {
906+
$groups = array_merge( $groups, $annotations['method']['group'] );
907+
}
908+
909+
if ( ! empty( $groups ) ) {
910+
if ( in_array( 'ms-required', $groups, true ) ) {
911+
$this->skipWithoutMultisite();
912+
}
913+
914+
if ( in_array( 'ms-excluded', $groups, true ) ) {
915+
$this->skipWithMultisite();
916+
}
917+
}
918+
919+
// Core tests no longer check against open Trac tickets,
920+
// but others using WP_UnitTestCase may do so.
921+
if ( defined( 'WP_RUN_CORE_TESTS' ) && WP_RUN_CORE_TESTS ) {
922+
return;
923+
}
924+
925+
if ( WP_TESTS_FORCE_KNOWN_BUGS ) {
926+
return;
927+
}
928+
$tickets = PHPUnit_Util_Test::getTickets( get_class( $this ), $this->getName( false ) );
929+
foreach ( $tickets as $ticket ) {
930+
if ( is_numeric( $ticket ) ) {
931+
$this->knownWPBug( $ticket );
932+
} elseif ( 0 === strpos( $ticket, 'Plugin' ) ) {
933+
$ticket = substr( $ticket, 6 );
934+
if ( $ticket && is_numeric( $ticket ) ) {
935+
$this->knownPluginBug( $ticket );
936+
}
937+
}
938+
}
896939
}
897940

898941
/**
@@ -915,6 +958,7 @@ public function knownWPBug( $ticket_id ) {
915958
* Skips the current test if there is an open Unit Test Trac ticket associated with it.
916959
*
917960
* @since 3.5.0
961+
*
918962
* @deprecated No longer used since the Unit Test Trac was merged into the Core Trac.
919963
*
920964
* @param int $ticket_id Ticket number.

0 commit comments

Comments
 (0)