Merge pull request #1 from civicrm/master
[civicrm-core.git] / Civi / CiUtil / Command / AntagonistCommand.php
index 3c7c94689713b8b4404e56b1d916ba6d1553a2fe..d8d9761ffe1a0c41bb9f787333be34983a32ab01 100644 (file)
@@ -1,7 +1,16 @@
 <?php
 namespace Civi\CiUtil\Command;
 
+/**
+ * Class AntagonistCommand
+ *
+ * @package Civi\CiUtil\Command
+ */
 class AntagonistCommand {
+
+  /**
+   * @param $argv
+   */
   public static function main($argv) {
     if (count($argv) != 3) {
       print "usage: {$argv[0]} <TargetTest::testFunc> </path/to/suite>\n";
@@ -9,59 +18,63 @@ class AntagonistCommand {
     }
     list ($program, $target, $suite) = $argv;
 
-    $candidateTests = \Civi\CiUtil\PHPUnitScanner::findTestsByPath(array($suite));
-//    $candidateTests = array(
-//      array('class' => 'CRM_Core_RegionTest', 'method' => 'testBlank'),
-//      array('class' => 'CRM_Core_RegionTest', 'method' => 'testDefault'),
-//      array('class' => 'CRM_Core_RegionTest', 'method' => 'testOverride'),
-//      array('class' => 'CRM_Core_RegionTest', 'method' => 'testAllTypes'),
-//    );
+    $candidateTests = \Civi\CiUtil\PHPUnitScanner::findTestsByPath([$suite]);
+    //    $candidateTests = array(
+    //      array('class' => 'CRM_Core_RegionTest', 'method' => 'testBlank'),
+    //      array('class' => 'CRM_Core_RegionTest', 'method' => 'testDefault'),
+    //      array('class' => 'CRM_Core_RegionTest', 'method' => 'testOverride'),
+    //      array('class' => 'CRM_Core_RegionTest', 'method' => 'testAllTypes'),
+    //    );
     $antagonist = self::findAntagonist($target, $candidateTests);
     if ($antagonist) {
-      print_r(array('found an antagonist' => $antagonist));
+      print_r(['found an antagonist' => $antagonist]);
     }
     else {
-      print_r(array('found no antagonists'));
+      print_r(['found no antagonists']);
     }
   }
 
   /**
-   * @param string $target e.g. "MyTest::testFoo"
-   * @param array $candidateTests list of strings (e.g. "MyTest::testFoo")
-   * @return array|null array contains keys:
-   *  - antagonist: array
-   *    - file: string
-   *    - class: string
-   *    - method: string
-   *  - expectedResults: array
-   *  - actualResults: array
+   * @param string $target
+   *   E.g. "MyTest::testFoo".
+   * @param array $candidateTests
+   *   List of strings (e.g. "MyTest::testFoo").
+   * @return array|null
+   *   array contains keys:
+   *    - antagonist: array
+   *      - file: string
+   *      - class: string
+   *      - method: string
+   *    - expectedResults: array
+   *    - actualResults: array
    */
   public static function findAntagonist($target, $candidateTests) {
     //$phpUnit = new \Civi\CiUtil\EnvTestRunner('./scripts/phpunit', 'EnvTests');
     $phpUnit = new \Civi\CiUtil\EnvTestRunner('phpunit', 'tests/phpunit/EnvTests.php');
-    $expectedResults = $phpUnit->run(array($target));
-    print_r(array('$expectedResults' => $expectedResults));
+    $expectedResults = $phpUnit->run([$target]);
+    print_r(['$expectedResults' => $expectedResults]);
 
     foreach ($candidateTests as $candidateTest) {
       $candidateTestName = $candidateTest['class'] . '::' . $candidateTest['method'];
       if ($candidateTestName == $target) {
         continue;
       }
-      $actualResults = $phpUnit->run(array(
+      $actualResults = $phpUnit->run([
         $candidateTestName,
         $target,
-      ));
-      print_r(array('$actualResults' => $actualResults));
+      ]);
+      print_r(['$actualResults' => $actualResults]);
       foreach ($expectedResults as $testName => $expectedResult) {
         if ($actualResults[$testName] != $expectedResult) {
-          return array(
+          return [
             'antagonist' => $candidateTest,
             'expectedResults' => $expectedResults,
             'actualResults' => $actualResults,
-          );
+          ];
         }
       }
     }
     return NULL;
   }
+
 }