mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2025-01-31 09:06:17 +00:00
Applying patch from 'mulleto'. Fixes plugin view file location with CamelCase plugin names. Test cases added.
Fixes #6334 git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@8202 3807eeeb-6ff5-0310-8944-8be069107fe0
This commit is contained in:
parent
16eb51e91c
commit
fd818bc493
2 changed files with 25 additions and 2 deletions
|
@ -800,7 +800,7 @@ class View extends Object {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$paths = $this->_paths($this->plugin);
|
$paths = $this->_paths(Inflector::underscore($this->plugin));
|
||||||
|
|
||||||
foreach ($paths as $path) {
|
foreach ($paths as $path) {
|
||||||
if (file_exists($path . $name . $this->ext)) {
|
if (file_exists($path . $name . $this->ext)) {
|
||||||
|
@ -840,7 +840,7 @@ class View extends Object {
|
||||||
if (!is_null($this->layoutPath)) {
|
if (!is_null($this->layoutPath)) {
|
||||||
$subDir = $this->layoutPath . DS;
|
$subDir = $this->layoutPath . DS;
|
||||||
}
|
}
|
||||||
$paths = $this->_paths($this->plugin);
|
$paths = $this->_paths(Inflector::underscore($this->plugin));
|
||||||
$file = 'layouts' . DS . $subDir . $name;
|
$file = 'layouts' . DS . $subDir . $name;
|
||||||
|
|
||||||
$exts = array($this->ext, '.ctp', '.thtml');
|
$exts = array($this->ext, '.ctp', '.thtml');
|
||||||
|
|
|
@ -248,6 +248,29 @@ class ViewTest extends CakeTestCase {
|
||||||
$this->assertEqual($result, $expected);
|
$this->assertEqual($result, $expected);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
* test that CamelCase plugins still find their view files.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
**/
|
||||||
|
function testCamelCasePluginGetTemplate() {
|
||||||
|
$this->Controller->plugin = 'TestPlugin';
|
||||||
|
$this->Controller->name = 'TestPlugin';
|
||||||
|
$this->Controller->viewPath = 'tests';
|
||||||
|
$this->Controller->action = 'index';
|
||||||
|
|
||||||
|
$View = new TestView($this->Controller);
|
||||||
|
Configure::write('pluginPaths', array(TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'plugins' . DS));
|
||||||
|
Configure::write('viewPaths', array(TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'views'. DS));
|
||||||
|
|
||||||
|
$expected = TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'plugins' . DS .'test_plugin' . DS . 'views' . DS .'tests' . DS .'index.ctp';
|
||||||
|
$result = $View->getViewFileName('index');
|
||||||
|
$this->assertEqual($result, $expected);
|
||||||
|
|
||||||
|
$expected = TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'plugins' . DS .'test_plugin' . DS . 'views' . DS . 'layouts' . DS .'default.ctp';
|
||||||
|
$result = $View->getLayoutFileName();
|
||||||
|
$this->assertEqual($result, $expected);
|
||||||
|
}
|
||||||
|
/**
|
||||||
* testGetTemplate method
|
* testGetTemplate method
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
|
|
Loading…
Add table
Reference in a new issue