Merge pull request #19870 from totten/master-psr0
authorcolemanw <coleman@civicrm.org>
Thu, 25 Mar 2021 16:16:10 +0000 (12:16 -0400)
committerGitHub <noreply@github.com>
Thu, 25 Mar 2021 16:16:10 +0000 (12:16 -0400)
info.xml - Allow PSR-0 style class-loader declarations

1  2 
tests/phpunit/CRM/Extension/InfoTest.php

index a6d0e9b44d506b24033e47bcd4ab7d9ff91ed72e,c016abd51c50709ca30dd6f0af18957a1684f793..75e082a73bdd9bd7e78c970c070bac9e79d6e2e5
@@@ -11,7 -11,7 +11,7 @@@ class CRM_Extension_InfoTest extends Ci
      $this->file = NULL;
    }
  
 -  public function tearDown() {
 +  public function tearDown(): void {
      if ($this->file) {
        unlink($this->file);
      }
  
    public function testGood_string_extras() {
      $data = "<extension key='test.bar' type='module'><file>testbar</file>
-       <classloader><psr4 prefix=\"Civi\\\" path=\"Civi\"/></classloader>
+       <classloader>
+         <psr4 prefix=\"Civi\\\" path=\"Civi\"/>
+         <psr0 prefix=\"CRM_\" path=\"\"/>
+       </classloader>
        <requires><ext>org.civicrm.a</ext><ext>org.civicrm.b</ext></requires>
      </extension>
      ";
      $this->assertEquals('testbar', $info->file);
      $this->assertEquals('Civi\\', $info->classloader[0]['prefix']);
      $this->assertEquals('Civi', $info->classloader[0]['path']);
+     $this->assertEquals('psr4', $info->classloader[0]['type']);
+     $this->assertEquals('CRM_', $info->classloader[1]['prefix']);
+     $this->assertEquals('', $info->classloader[1]['path']);
+     $this->assertEquals('psr0', $info->classloader[1]['type']);
      $this->assertEquals(['org.civicrm.a', 'org.civicrm.b'], $info->requires);
    }