public function caseProvider() { $array = array(); foreach (build_list(find_tests()) as $arr) { foreach ($arr as $e) { $name = $e['name']; if ($name === 'index' || in_array($name, self::$skipped)) { continue; } $array[] = array($name); } } return $array; }
public function caseProvider() { $cases = array(); foreach (build_list(find_tests()) as $arr) { foreach ($arr as $e) { $name = $e['name']; if ($name === 'index' || in_array($name, self::$skipped)) { continue; } if (isset(self::$skipped[$name])) { if (defined('HHVM_VERSION') && self::$skipped[$name] === 'hhvm') { continue; } } $cases[] = array($name); } } return $cases; }
function get_tests_results($verbose = false) { global $argv; $moreVerbose = array_remove($argv, '--verbose'); if (!(ini_get('allow_url_include') | 0)) { echo "To accelerate the test execution, set in php.ini :\nallow_url_include = On\n\n"; } $nav_list = build_list(find_tests()); $success = 0; $failures = 0; $results = array(); foreach ($nav_list as $type => $arr) { foreach ($arr as $e) { $name = $e['name']; if ($name === 'index' || isset($argv[1]) && false === stripos($argv[0], 'phpunit') && $name !== $argv[1] && $argv[1] !== '.') { continue; } if ($result = get_test_result($name, $verbose, $moreVerbose)) { $results[] = $result[1]; if ($result[0]) { $success++; } else { $failures++; } } } } return array('success' => $success, 'failures' => $failures, 'results' => $results); }
<?php $alltests = array("tests" => array(), "uses" => array()); $files = find_modules(); foreach ($files as $file) { print "checking {$file}\n"; $data = file_get_contents("../detect/" . $file); $uses = find_uses($data); $tests = find_tests($data); foreach ($uses as $item) { $alltests['uses'][] = $item; } foreach ($tests as $item) { $alltests['tests'][] = $item; } } print_r($alltests); function find_tests($file) { $re = "/addtest\\([\"\\'](.*)[\"\\'],/"; preg_match_all($re, $file, $matches); return $matches[1]; } function find_uses($file) { $re = "/has\\([\"\\']([a-zA-Z-_]+)[\"\\']\\)/"; preg_match_all($re, $file, $matches); return $matches[1]; } function find_modules($d = "../detect/", $f = "*.js") {
if (!isset($group_list[$parts[0]])) { $group_list[$parts[0]] = array(); } $group_list[$parts[0]][] = array('link' => $test, 'name' => $name); } return $group_list; } function show_php($file) { $jade = new \Jade\Jade(true); return $jade->render($file); } mb_internal_encoding('utf-8'); error_reporting(E_ALL); setup_autoload(); $nav_list = build_list(find_tests()); foreach ($nav_list as $type => $arr) { foreach ($arr as $e) { if ($e['name'] == 'index' || isset($argv[1]) && $e['name'] != $argv[1] && $argv[1] != '.') { continue; } $html = @file_get_contents($e['name'] . '.html'); if ($html === FALSE) { print "! sample for test '{$e['name']}' not found.\n"; continue; } print "* rendering test '{$e['name']}'\n"; try { $new = show_php($e['name'] . '.jade'); } catch (Exception $err) { print "! FATAL: php exception: " . str_replace("\n", "\n\t", $err) . "\n";
function get_tests_results($verbose = false) { global $argv; $nav_list = build_list(find_tests()); $success = 0; $failures = 0; $results = array(); foreach ($nav_list as $type => $arr) { foreach ($arr as $e) { $name = $e['name']; if ($name == 'index' || isset($argv[1]) && false === stripos($argv[0], 'phpunit') && $name != $argv[1] && $argv[1] != '.') { continue; } $result = get_test_result($name, $verbose); $results[] = $result[1]; if ($result[0]) { $success++; } else { $failures++; if (isset($argv[1]) && $argv[1] == '.') { exit; } } } } return array('success' => $success, 'failures' => $failures, 'results' => $results); }