Ticket #13407: 13407.patch
File 13407.patch, 3.8 KB (added by , 15 years ago) |
---|
-
wp-testlib/base.php
393 393 */ 394 394 function isTracTicketClosed($trac_url, $ticket_id) { 395 395 #TODO: cache it 396 $trac_url = rtrim($trac_url, '/'); 397 $ticket_tsv = file_get_contents("$trac_url/ticket/$ticket_id?format=tab"); 396 $trac_url = rtrim($trac_url, '/'); 397 $url = sprintf('%s/ticket/%s?format=tab', $trac_url, $ticket_id); 398 $ticket_tsv = file_get_contents($url); 398 399 if (false === $ticket_tsv) { 399 400 return null; 400 401 } … … 410 411 $tabs = explode("\t", $lines[1]); 411 412 return 'closed' === $tabs[$status_idx]; 412 413 } 414 415 /** 416 * Skips the current test if there is an open ticket in a trac 417 * based bug-tracker 418 * 419 * @param string $trac_domain domain name of trac webapplication 420 * @param string $ticket_id ticket id 421 * @return void 422 */ 423 private function _knownBugTrac($trac_domain, $ticket_id) { 424 if ( !TEST_FORCE_KNOWN_BUGS 425 && (TEST_SKIP_KNOWN_BUGS || !$this->isTracTicketClosed( 'http://' . $trac_domain, $ticket_id )) ) { 426 $this->markTestSkipped(); 427 } 428 } 413 429 414 430 /** 415 431 * Skips the current test if there is open WordPress ticket with id $ticket_id 416 432 */ 417 433 function knownWPBug($ticket_id) { 418 if (!TEST_FORCE_KNOWN_BUGS && (TEST_SKIP_KNOWN_BUGS || !$this->isTracTicketClosed('http://trac.wordpress.org', $ticket_id))) { 419 $this->markTestSkipped(); 420 } 434 $this->_knownBugTrac('trac.wordpress.org', $ticket_id); 421 435 } 422 436 423 437 /** 424 438 * Skips the current test if there is open WordPress MU ticket with id $ticket_id 425 439 */ 426 440 function knownMUBug($ticket_id) { 427 if (!TEST_FORCE_KNOWN_BUGS && (TEST_SKIP_KNOWN_BUGS || !$this->isTracTicketClosed('http://trac.mu.wordpress.org', $ticket_id))) { 428 $this->markTestSkipped(); 429 } 441 $this->_knownBugTrac('trac.mu.wordpress.org', $ticket_id); 430 442 } 431 443 432 444 /**i 433 445 * Skips the current test if there is open plugin ticket with id $ticket_id 434 446 */ 435 447 function knownPluginBug($ticket_id) { 436 if (!TEST_FORCE_KNOWN_BUGS && (TEST_SKIP_KNOWN_BUGS || !$this->isTracTicketClosed('http://dev.wp-plugins.org', $ticket_id))) { 437 $this->markTestSkipped(); 438 } 448 $this->_knownBugTrac('dev.wp-plugins.org', $ticket_id); 439 449 } 440 450 441 451 // convenience function: return the # of posts associated with a tag … … 513 523 echo "\n\nUse -t TestCaseName to run individual test cases\n"; 514 524 } 515 525 516 function wptest_run_tests($classes, $classname='') { 517 $suite = new PHPUnit_Framework_TestSuite(); 518 foreach ($classes as $testcase) 519 if (!$classname or strtolower($testcase) == strtolower($classname)) { 526 function wptest_run_tests($classes, $filter='') { 527 $suite = new PHPUnit_Framework_TestSuite(); 528 529 $filter_do = (bool) strlen($filter); 530 $filter_ok = true; 531 if ($filter_do) { 532 if ('!' == $filter[0]) { 533 $filter = substr($filter, 1); 534 $filter_ok = false; 535 } 536 $filter_classes = explode(',',$filter); 537 $filter_classes = array_map('strtolower', $filter_classes); 538 $filter_classes = array_map('trim', $filter_classes); 539 } 540 541 foreach ($classes as $testcase) { 542 $match = $filter_do ? in_array(strtolower($testcase), $filter_classes) : true; 543 $add = $filter_ok ? $match : !$match; 544 if ($add) 520 545 $suite->addTestSuite($testcase); 521 546 } 522 547 523 548 #return PHPUnit::run($suite); 524 549 $result = new PHPUnit_Framework_TestResult; 525 550 require_once('PHPUnit/TextUI/ResultPrinter.php'); 526 $printer = new PHPUnit_TextUI_ResultPrinter( NULL,true,true);551 $printer = new PHPUnit_TextUI_ResultPrinter( NULL, true, $colors = !((bool) stristr(PHP_OS, 'WIN')) ); 527 552 $result->addListener($printer); 528 553 return array($suite->run($result), $printer); 529 554 } -
wp-test.cmd
1 @ECHO OFF 2 php wp-test.php %* 3 pause 4 No newline at end of file