function testPrefixes() { // Prepare the class finder. $finder = new ClassFinder(); $finder->registerPrefixDeep('ex_ample', 'sites/all/modules/contrib/ex_ample/lib'); $finder->registerPrefixRoot('ex_ample', 'sites/all/modules/contrib/ex_ample/vendor'); // Test class finding for 'ex_ample_Abc_Def'. $this->assertFinderSuggestions($finder, 'ex_ample_Abc_Def', array(array('suggestFile', 'sites/all/modules/contrib/ex_ample/lib/Abc/Def.php'), array('suggestFile', 'sites/all/modules/contrib/ex_ample/vendor/ex/ample/Abc/Def.php'))); }
/** * Tests PEAR-like class names beginning with underscore, or with a double * underscore in between. */ function testSpecialUnderscores() { // Prepare the class finder. $finder = new ClassFinder(); $finder->registerPrefixDeep('_ex_ample', 'test://lib'); $finder->registerPrefixRoot('_ex_ample', 'test://vendor'); // Verify that underscores are not a problem.. $this->assertCandidateOrder($finder, '_ex_ample_Abc%_Def', array('test://lib/Abc%/Def.php', 'test://vendor/_ex/ample/Abc%/Def.php')); $this->assertCandidateOrder($finder, '_abc_Foo%', array()); $this->assertCandidateOrder($finder, 'abc__Foo%', array()); }