summaryrefslogtreecommitdiffstats
path: root/phpunit6-rpm.patch
blob: c03c25d8af68d4400104504fe63d207c86174887 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
diff -up ./phpunit.rpm ./phpunit
--- ./phpunit.rpm	2017-02-07 16:05:03.325668400 +0100
+++ ./phpunit	2017-02-07 16:09:20.442818688 +0100
@@ -27,27 +27,27 @@ if (!ini_get('date.timezone')) {
     ini_set('date.timezone', 'UTC');
 }
 
-foreach (array(__DIR__ . '/../../autoload.php', __DIR__ . '/../vendor/autoload.php', __DIR__ . '/vendor/autoload.php') as $file) {
-    if (file_exists($file)) {
-        define('PHPUNIT_COMPOSER_INSTALL', $file);
-
-        break;
-    }
+// Ensure correct include_path for RHSCL
+$inc = get_include_path();
+$dirs = explode(':', $inc);
+if (!in_array('/usr/share/php', $dirs)) {
+    $dirs[] = '/usr/share/php';
+    set_include_path(implode(':', $dirs));
 }
+unset ($inc, $dirs);
 
-unset($file);
-
-if (!defined('PHPUNIT_COMPOSER_INSTALL')) {
-    fwrite(
-        STDERR,
-        'You need to set up the project dependencies using Composer:' . PHP_EOL . PHP_EOL .
-        '    composer install' . PHP_EOL . PHP_EOL .
-        'You can learn all about Composer on https://getcomposer.org/.' . PHP_EOL
-    );
-
-    die(1);
+// Libraries PATH
+if (file_exists('./vendor/phpunit/phpunit/phpunit') && file_exists('./vendor/autoload.php')) {
+    echo "\n==== Redirecting to composer installed version in vendor/phpunit ====\n\n";
+    define ('PHPUNIT_COMPOSER_INSTALL', realpath('./vendor/autoload.php'));
+} else {
+    define ('PHPUNIT_COMPOSER_INSTALL', stream_resolve_include_path('PHPUnit6/autoload.php'));
 }
 
 require PHPUNIT_COMPOSER_INSTALL;
 
-PHPUnit\TextUI\Command::main();
+if (class_exists('PHPUnit_TextUI_Command')) {
+    PHPUnit_TextUI_Command::main(); // PHPUnit v5 or older
+} else {
+    PHPUnit\TextUI\Command::main(); // PHPUnit v6 or newer
+}

diff -up tests/bootstrap.php.rpm tests/bootstrap.php
--- tests/bootstrap.php.rpm	2017-03-15 19:45:42.004596546 +0100
+++ tests/bootstrap.php	2017-03-15 19:47:16.561034373 +0100
@@ -6,7 +6,10 @@ if (!defined('TEST_FILES_PATH')) {
 ini_set('precision', 14);
 ini_set('serialize_precision', 14);
 
-require_once __DIR__ . '/../vendor/autoload.php';
+require_once '@PATH@/autoload.php';
+require_once __DIR__ . '/_files/CoveredFunction.php';
+require_once '@PATH@/Framework/Assert/Functions.php';
+require_once __DIR__ . '/autoload.php';
 
 // TODO: Figure out why (some of) these are required (the classes should be autoloaded instead)
 require_once TEST_FILES_PATH . 'BeforeAndAfterTest.php';