Add file_exists check on loading services xml
authorEileen McNaughton <emcnaughton@wikimedia.org>
Wed, 16 Jun 2021 05:14:03 +0000 (17:14 +1200)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Wed, 16 Jun 2021 06:13:45 +0000 (18:13 +1200)
I'm hitting an issue where we run unit tests on our own code base and this is hitting file-not-found

We don't package the tests directory with the tarball so it's not there.

The alternative is to move it to the Civi\test folder if it's important that
it be there for non-core tests

CRM/Api4/Services.php

index fe88674de4de73d9acb5c283db6eb20121428041..18bab2f7ad8d747f0344bc0ffbde943a09f686cd 100644 (file)
@@ -58,7 +58,9 @@ class CRM_Api4_Services {
       );
     }
 
-    if (defined('CIVICRM_UF') && CIVICRM_UF === 'UnitTests') {
+    if (defined('CIVICRM_UF') && CIVICRM_UF === 'UnitTests'
+      && file_exists('tests/phpunit/api/v4/services.xml')
+    ) {
       $loader->load('tests/phpunit/api/v4/services.xml');
     }
   }