Skip to content

Commit

Permalink
Fixed error where App::import() failed to load new class types added …
Browse files Browse the repository at this point in the history
…in 2.0. Also fixed couple of test cases.
  • Loading branch information
ADmad committed Apr 30, 2011
1 parent d61ebae commit 75437b4
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
12 changes: 6 additions & 6 deletions lib/Cake/Core/App.php
Expand Up @@ -614,10 +614,10 @@ public static function import($type = null, $name = null, $parent = true, $searc
return true;
}

$originalType = $type = strtolower($type);
$specialPackage = in_array($type, array('file', 'vendor'));
if (!$specialPackage && isset(self::$legacy[$type . 's'])) {
$type = self::$legacy[$type . 's'];
$originalType = strtolower($type);
$specialPackage = in_array($originalType, array('file', 'vendor'));
if (!$specialPackage && isset(self::$legacy[$originalType . 's'])) {
$type = self::$legacy[$originalType . 's'];
}
list($plugin, $name) = pluginSplit($name);
if (!empty($plugin)) {
Expand All @@ -628,11 +628,11 @@ public static function import($type = null, $name = null, $parent = true, $searc
return self::_loadClass($name, $plugin, $type, $originalType, $parent);
}

if ($type == 'file' && !empty($file)) {
if ($originalType == 'file' && !empty($file)) {
return self::_loadFile($name, $plugin, $search, $file, $return);
}

if ($type == 'vendor') {
if ($originalType == 'vendor') {
return self::_loadVendor($name, $plugin, $file, $ext);
}

Expand Down
6 changes: 4 additions & 2 deletions lib/Cake/tests/Case/Core/AppTest.php
Expand Up @@ -285,9 +285,11 @@ function testListObjectsInPlugin() {
$this->assertTrue(in_array('TestPluginPersisterOne', $result));

$result = App::objects('TestPlugin.helper');
sort($result);
$expected = array('OtherHelperHelper', 'PluggedHelper', 'TestPluginApp');
$this->assertEquals($result, $expected);
$result = App::objects('TestPlugin.View/Helper');
sort($result);
$expected = array('OtherHelperHelper', 'PluggedHelper', 'TestPluginApp');
$this->assertEquals($result, $expected);

Expand Down Expand Up @@ -462,15 +464,15 @@ function testPluginImporting() {
$result = App::import('Helper', 'TestPlugin.OtherHelper');
$this->assertTrue($result);
$this->assertTrue(class_exists('OtherHelperHelper'));

$result = App::import('Helper', 'TestPlugin.TestPluginApp');
$this->assertTrue($result);
$this->assertTrue(class_exists('TestPluginAppHelper'));

$result = App::import('Datasource', 'TestPlugin.TestSource');
$this->assertTrue($result);
$this->assertTrue(class_exists('TestSource'));

App::build();
}

Expand Down

0 comments on commit 75437b4

Please sign in to comment.