You are here

function XAutoloadUnitTestCase::testLibPSR0 in X Autoload 7.2

File

./xautoload.test, line 65

Class

XAutoloadUnitTestCase

Code

function testLibPSR0() {
  $system = new xautoload_Mock_DrupalExtensionSystem();
  $system
    ->addModule('menu_block', 'sites/all/modules/contrib/menu_block');
  $this
    ->assert($system
    ->extensionExists('menu_block'), 'menu_block should "exist".');
  $this
    ->assert(!$system
    ->extensionExists('foo'), 'foo should not "exist".');
  $this
    ->assert($system
    ->getExtensionPath('menu_block') === 'sites/all/modules/contrib/menu_block', 'menu_block should be located in sites/all/modules/contrib/menu_block');
  $plugin = new xautoload_Plugin_DrupalExtensionLibPrefixDeep($system);
  $plugin_psr0 = new xautoload_Plugin_DrupalExtensionLibPSR0($system);
  $finder = new xautoload_ClassFinder_NamespaceOrPrefix();
  $finder
    ->registerNamespacePlugin('Drupal', $plugin_psr0);
  $finder
    ->registerPrefixPlugin('', $plugin);

  // PSR0-style (D8, PHP 5.3)
  // We mix in some underscores just to make sure they work as designed.
  $this
    ->_findClass($finder, 'Drupal\\menu_block\\Abc_Def\\G_Hi', array(
    'sites/all/modules/contrib/menu_block/lib/Drupal/menu_block/Abc_Def/G/Hi.php',
  ));

  // xautoload-style (D6, D7, PHP 5.2)
  // We mix in some lowercase characters, only to make sure they work as designed.
  $this
    ->_findClass($finder, 'menu_block_Abc_Def_g_hi', array(
    'sites/all/modules/contrib/menu_block/lib/Abc/Def/g/hi.php',
  ));
}