Merge branch '1.3-bake' into 1.3

This commit is contained in:
mark_story 2009-09-20 17:42:43 -04:00
commit a3cd80bf52
11 changed files with 70 additions and 46 deletions

View file

@ -490,7 +490,7 @@ if (!function_exists('file_put_contents')) {
$expires = strtotime($expires, $now); $expires = strtotime($expires, $now);
} }
switch (low($target)) { switch (strtolower($target)) {
case 'cache': case 'cache':
$filename = CACHE . $path; $filename = CACHE . $path;
break; break;

View file

@ -173,8 +173,8 @@ class ApiShell extends Shell {
foreach ($commands as $cmd) { foreach ($commands as $cmd) {
$this->out("{$cmd}\n\n"); $this->out("{$cmd}\n\n");
} }
} elseif (isset($commands[low($this->args[1])])) { } elseif (isset($commands[strtolower($this->args[1])])) {
$this->out($commands[low($this->args[1])] . "\n\n"); $this->out($commands[strtolower($this->args[1])] . "\n\n");
} else { } else {
$this->out("Command '" . $this->args[1] . "' not found"); $this->out("Command '" . $this->args[1] . "' not found");
} }

View file

@ -294,8 +294,8 @@ class ControllerTask extends Shell {
$controllerPath = $this->_controllerPath($controllerName); $controllerPath = $this->_controllerPath($controllerName);
$pluralName = $this->_pluralName($currentModelName); $pluralName = $this->_pluralName($currentModelName);
$singularName = Inflector::variable($currentModelName); $singularName = Inflector::variable($currentModelName);
$singularHumanName = Inflector::humanize($currentModelName); $singularHumanName = $this->_singularHumanName($currentModelName);
$pluralHumanName = Inflector::humanize($controllerName); $pluralHumanName = $this->_pluralName($controllerName);
$this->Template->set(compact('admin', 'controllerPath', 'pluralName', 'singularName', 'singularHumanName', $this->Template->set(compact('admin', 'controllerPath', 'pluralName', 'singularName', 'singularHumanName',
'pluralHumanName', 'modelObj', 'wannaUseSession', 'currentModelName')); 'pluralHumanName', 'modelObj', 'wannaUseSession', 'currentModelName'));

View file

@ -108,7 +108,7 @@ class DbConfigTask extends Shell {
$driver = $this->in('Driver:', array('db2', 'firebird', 'mssql', 'mysql', 'mysqli', 'odbc', 'oracle', 'postgres', 'sqlite', 'sybase'), 'mysql'); $driver = $this->in('Driver:', array('db2', 'firebird', 'mssql', 'mysql', 'mysqli', 'odbc', 'oracle', 'postgres', 'sqlite', 'sybase'), 'mysql');
$persistent = $this->in('Persistent Connection?', array('y', 'n'), 'n'); $persistent = $this->in('Persistent Connection?', array('y', 'n'), 'n');
if (low($persistent) == 'n') { if (strtolower($persistent) == 'n') {
$persistent = 'false'; $persistent = 'false';
} else { } else {
$persistent = 'true'; $persistent = 'true';
@ -124,7 +124,7 @@ class DbConfigTask extends Shell {
$port = $this->in('Port?', null, 'n'); $port = $this->in('Port?', null, 'n');
} }
if (low($port) == 'n') { if (strtolower($port) == 'n') {
$port = null; $port = null;
} }
@ -155,7 +155,7 @@ class DbConfigTask extends Shell {
while ($prefix == '') { while ($prefix == '') {
$prefix = $this->in('Table Prefix?', null, 'n'); $prefix = $this->in('Table Prefix?', null, 'n');
} }
if (low($prefix) == 'n') { if (strtolower($prefix) == 'n') {
$prefix = null; $prefix = null;
} }
@ -163,7 +163,7 @@ class DbConfigTask extends Shell {
while ($encoding == '') { while ($encoding == '') {
$encoding = $this->in('Table encoding?', null, 'n'); $encoding = $this->in('Table encoding?', null, 'n');
} }
if (low($encoding) == 'n') { if (strtolower($encoding) == 'n') {
$encoding = null; $encoding = null;
} }
@ -173,7 +173,7 @@ class DbConfigTask extends Shell {
$schema = $this->in('Table schema?', null, 'n'); $schema = $this->in('Table schema?', null, 'n');
} }
} }
if (low($schema) == 'n') { if (strtolower($schema) == 'n') {
$schema = null; $schema = null;
} }
@ -185,7 +185,7 @@ class DbConfigTask extends Shell {
$dbConfigs[] = $config; $dbConfigs[] = $config;
$doneYet = $this->in('Do you wish to add another database configuration?', null, 'n'); $doneYet = $this->in('Do you wish to add another database configuration?', null, 'n');
if (low($doneYet == 'n')) { if (strtolower($doneYet == 'n')) {
$done = true; $done = true;
} }
} }

View file

@ -419,7 +419,7 @@ class FixtureTask extends Shell {
$this->out('Parameters:'); $this->out('Parameters:');
$this->out("\t-count When using generated data, the number of records to include in the fixture(s)."); $this->out("\t-count When using generated data, the number of records to include in the fixture(s).");
$this->out("\t-connection Which database configuration to use for baking."); $this->out("\t-connection Which database configuration to use for baking.");
$this->out("\t-plugin lowercased_underscored name of plugin to bake fixtures for."); $this->out("\t-plugin CamelCased name of plugin to bake fixtures for.");
$this->out(""); $this->out("");
$this->_stop(); $this->_stop();
} }

View file

@ -614,7 +614,7 @@ class ModelTask extends Shell {
$prompt = "{$model->name} {$type} {$associations[$type][$i]['alias']}"; $prompt = "{$model->name} {$type} {$associations[$type][$i]['alias']}";
$response = $this->in("{$prompt}?", array('y','n'), 'y'); $response = $this->in("{$prompt}?", array('y','n'), 'y');
if ('n' == low($response)) { if ('n' == strtolower($response)) {
unset($associations[$type][$i]); unset($associations[$type][$i]);
} elseif ($type == 'hasMany') { } elseif ($type == 'hasMany') {
unset($associations['hasOne'][$i]); unset($associations['hasOne'][$i]);
@ -637,7 +637,7 @@ class ModelTask extends Shell {
$prompt = __('Would you like to define some additional model associations?', true); $prompt = __('Would you like to define some additional model associations?', true);
$wannaDoMoreAssoc = $this->in($prompt, array('y','n'), 'n'); $wannaDoMoreAssoc = $this->in($prompt, array('y','n'), 'n');
$possibleKeys = $this->_generatePossibleKeys(); $possibleKeys = $this->_generatePossibleKeys();
while (low($wannaDoMoreAssoc) == 'y') { while (strtolower($wannaDoMoreAssoc) == 'y') {
$assocs = array('belongsTo', 'hasOne', 'hasMany', 'hasAndBelongsToMany'); $assocs = array('belongsTo', 'hasOne', 'hasMany', 'hasAndBelongsToMany');
$this->out(__('What is the association type?', true)); $this->out(__('What is the association type?', true));
$assocType = intval($this->inOptions($assocs, __('Enter a number',true))); $assocType = intval($this->inOptions($assocs, __('Enter a number',true)));

View file

@ -184,7 +184,7 @@ class ProjectTask extends Shell {
function createHome($dir) { function createHome($dir) {
$app = basename($dir); $app = basename($dir);
$path = $dir . 'views' . DS . 'pages' . DS; $path = $dir . 'views' . DS . 'pages' . DS;
$source = CAKE_CORE_INCLUDE_PATH . DS . CAKE . 'console' . DS . 'templates' . DS .'default' . DS . 'views' . DS . 'home.ctp'; $source = CAKE . 'console' . DS . 'templates' . DS .'default' . DS . 'views' . DS . 'home.ctp';
include($source); include($source);
return $this->createFile($path.'home.ctp', $output); return $this->createFile($path.'home.ctp', $output);
} }

View file

@ -414,5 +414,30 @@ class TestTask extends Shell {
} }
return $path . Inflector::underscore($className) . '.test.php'; return $path . Inflector::underscore($className) . '.test.php';
} }
/**
* Show help file.
*
* @return void
**/
function help() {
$this->hr();
$this->out("Usage: cake bake test <type> <class>");
$this->hr();
$this->out('Commands:');
$this->out("");
$this->out("test model post\n\tbakes a test case for the post model.");
$this->out("");
$this->out("test controller comments\n\tbakes a test case for the comments controller.");
$this->out("");
$this->out('Arguments:');
$this->out("\t<type> Can be any of the following 'controller', 'model', 'helper',\n\t'component', 'behavior'.");
$this->out("\t<class> Any existing class for the chosen type.");
$this->out("");
$this->out("Parameters:");
$this->out("\t-plugin CamelCased name of plugin to bake tests for.");
$this->out("");
$this->_stop();
}
} }
?> ?>

View file

@ -284,9 +284,7 @@ class ViewTask extends Shell {
$primaryKey = $modelObj->primaryKey; $primaryKey = $modelObj->primaryKey;
$displayField = $modelObj->displayField; $displayField = $modelObj->displayField;
$singularVar = Inflector::variable($modelClass); $singularVar = Inflector::variable($modelClass);
$pluralVar = Inflector::variable($this->controllerName); $singularHumanName = $this->_singularHumanName($modelClass);
$singularHumanName = Inflector::humanize($modelClass);
$pluralHumanName = Inflector::humanize($this->controllerName);
$schema = $modelObj->schema(); $schema = $modelObj->schema();
$fields = array_keys($schema); $fields = array_keys($schema);
$associations = $this->__associations($modelObj); $associations = $this->__associations($modelObj);
@ -294,13 +292,13 @@ class ViewTask extends Shell {
$primaryKey = null; $primaryKey = null;
$displayField = null; $displayField = null;
$singularVar = Inflector::variable(Inflector::singularize($this->controllerName)); $singularVar = Inflector::variable(Inflector::singularize($this->controllerName));
$pluralVar = Inflector::variable($this->controllerName); $singularHumanName = $this->_singularHumanName($this->controllerName);
$singularHumanName = Inflector::humanize(Inflector::singularize($this->controllerName));
$pluralHumanName = Inflector::humanize($this->controllerName);
$fields = array(); $fields = array();
$schema = array(); $schema = array();
$associations = array(); $associations = array();
} }
$pluralVar = Inflector::variable($this->controllerName);
$pluralHumanName = $this->_pluralHumanName($this->controllerName);
return compact('modelClass', 'schema', 'primaryKey', 'displayField', 'singularVar', 'pluralVar', return compact('modelClass', 'schema', 'primaryKey', 'displayField', 'singularVar', 'pluralVar',
'singularHumanName', 'pluralHumanName', 'fields','associations'); 'singularHumanName', 'pluralHumanName', 'fields','associations');

View file

@ -27,10 +27,10 @@
function <?php echo $admin ?>view($id = null) { function <?php echo $admin ?>view($id = null) {
if (!$id) { if (!$id) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('Invalid <?php echo $singularHumanName ?>', true)); $this->Session->setFlash(__('Invalid <?php echo strtolower($singularHumanName) ?>', true));
$this->redirect(array('action' => 'index')); $this->redirect(array('action' => 'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('Invalid <?php echo $singularHumanName; ?>', true), array('action' => 'index')); $this->flash(__('Invalid <?php echo strtolower($singularHumanName); ?>', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} }
$this->set('<?php echo $singularName; ?>', $this-><?php echo $currentModelName; ?>->read(null, $id)); $this->set('<?php echo $singularName; ?>', $this-><?php echo $currentModelName; ?>->read(null, $id));
@ -42,14 +42,14 @@
$this-><?php echo $currentModelName; ?>->create(); $this-><?php echo $currentModelName; ?>->create();
if ($this-><?php echo $currentModelName; ?>->save($this->data)) { if ($this-><?php echo $currentModelName; ?>->save($this->data)) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('The <?php echo $singularHumanName; ?> has been saved', true)); $this->Session->setFlash(__('The <?php echo strtolower($singularHumanName); ?> has been saved', true));
$this->redirect(array('action' => 'index')); $this->redirect(array('action' => 'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('<?php echo $currentModelName; ?> saved.', true), array('action' => 'index')); $this->flash(__('<?php echo ucfirst(strtolower($currentModelName)); ?> saved.', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} else { } else {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('The <?php echo $singularHumanName; ?> could not be saved. Please, try again.', true)); $this->Session->setFlash(__('The <?php echo strtolower($singularHumanName); ?> could not be saved. Please, try again.', true));
<?php endif; ?> <?php endif; ?>
} }
} }
@ -74,23 +74,23 @@
function <?php echo $admin; ?>edit($id = null) { function <?php echo $admin; ?>edit($id = null) {
if (!$id && empty($this->data)) { if (!$id && empty($this->data)) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('Invalid <?php echo $singularHumanName; ?>', true)); $this->Session->setFlash(__('Invalid <?php echo strtolower($singularHumanName); ?>', true));
$this->redirect(array('action' => 'index')); $this->redirect(array('action' => 'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('Invalid <?php echo $singularHumanName; ?>', true), array('action' => 'index')); $this->flash(__('Invalid <?php echo strtolower($singularHumanName); ?>', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} }
if (!empty($this->data)) { if (!empty($this->data)) {
if ($this-><?php echo $currentModelName; ?>->save($this->data)) { if ($this-><?php echo $currentModelName; ?>->save($this->data)) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('The <?php echo $singularHumanName; ?> has been saved', true)); $this->Session->setFlash(__('The <?php echo strtolower($singularHumanName); ?> has been saved', true));
$this->redirect(array('action' => 'index')); $this->redirect(array('action' => 'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('The <?php echo $singularHumanName; ?> has been saved.', true), array('action' => 'index')); $this->flash(__('The <?php echo strtolower($singularHumanName); ?> has been saved.', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} else { } else {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('The <?php echo $singularHumanName; ?> could not be saved. Please, try again.', true)); $this->Session->setFlash(__('The <?php echo strtolower($singularHumanName); ?> could not be saved. Please, try again.', true));
<?php endif; ?> <?php endif; ?>
} }
} }
@ -117,24 +117,24 @@
function <?php echo $admin; ?>delete($id = null) { function <?php echo $admin; ?>delete($id = null) {
if (!$id) { if (!$id) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('Invalid id for <?php echo $singularHumanName; ?>', true)); $this->Session->setFlash(__('Invalid id for <?php echo strtolower($singularHumanName); ?>', true));
$this->redirect(array('action'=>'index')); $this->redirect(array('action'=>'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('Invalid <?php echo $singularHumanName; ?>', true), array('action' => 'index')); $this->flash(__('Invalid <?php echo strtolower($singularHumanName); ?>', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} }
if ($this-><?php echo $currentModelName; ?>->delete($id)) { if ($this-><?php echo $currentModelName; ?>->delete($id)) {
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('<?php echo $singularHumanName; ?> deleted', true)); $this->Session->setFlash(__('<?php echo ucfirst(strtolower($singularHumanName)); ?> deleted', true));
$this->redirect(array('action'=>'index')); $this->redirect(array('action'=>'index'));
<?php else: ?> <?php else: ?>
$this->flash(__('<?php echo $singularHumanName; ?> deleted', true), array('action' => 'index')); $this->flash(__('<?php echo strtolower($singularHumanName); ?> deleted', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
} }
<?php if ($wannaUseSession): ?> <?php if ($wannaUseSession): ?>
$this->Session->setFlash(__('<?php echo $singularHumanName; ?> was not deleted', true)); $this->Session->setFlash(__('<?php echo ucfirst(strtolower($singularHumanName)); ?> was not deleted', true));
<?php else: ?> <?php else: ?>
$this->flash(__('<?php echo $singularHumanName; ?> was not deleted', true), array('action' => 'index')); $this->flash(__('<?php echo strtolower($singularHumanName); ?> was not deleted', true), array('action' => 'index'));
<?php endif; ?> <?php endif; ?>
$this->redirect(array('action' => 'index')); $this->redirect(array('action' => 'index'));
} }

View file

@ -33,13 +33,11 @@ if (!class_exists('ShellDispatcher')) {
ob_end_clean(); ob_end_clean();
} }
require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'view.php'; require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'view.php';
require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'controller.php'; require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'controller.php';
require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'template.php'; require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'template.php';
require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'project.php'; require_once CAKE . 'console' . DS . 'libs' . DS . 'tasks' . DS . 'project.php';
Mock::generatePartial( Mock::generatePartial(
'ShellDispatcher', 'TestViewTaskMockShellDispatcher', 'ShellDispatcher', 'TestViewTaskMockShellDispatcher',
array('getInput', 'stdout', 'stderr', '_stop', '_initEnvironment') array('getInput', 'stdout', 'stderr', '_stop', '_initEnvironment')
@ -120,6 +118,8 @@ class ViewTaskTest extends CakeTestCase {
/** /**
* startTest method * startTest method
* *
* Ensure that the default theme is used
*
* @return void * @return void
* @access public * @access public
*/ */
@ -132,6 +132,7 @@ class ViewTaskTest extends CakeTestCase {
$this->Task->Controller =& new ViewTaskMockControllerTask(); $this->Task->Controller =& new ViewTaskMockControllerTask();
$this->Task->Project =& new ViewTaskMockProjectTask(); $this->Task->Project =& new ViewTaskMockProjectTask();
$this->Task->path = TMP; $this->Task->path = TMP;
$this->Task->Template->params['theme'] = 'default';
} }
/** /**
@ -259,11 +260,11 @@ class ViewTaskTest extends CakeTestCase {
$this->Task->expectAt(0, 'createFile', array( $this->Task->expectAt(0, 'createFile', array(
TMP . 'view_task_comments' . DS . 'view.ctp', TMP . 'view_task_comments' . DS . 'view.ctp',
new PatternExpectation('/ViewTaskComments/') new PatternExpectation('/View Task Comments/')
)); ));
$this->Task->expectAt(1, 'createFile', array( $this->Task->expectAt(1, 'createFile', array(
TMP . 'view_task_comments' . DS . 'edit.ctp', TMP . 'view_task_comments' . DS . 'edit.ctp',
new PatternExpectation('/Edit ViewTaskComment/') new PatternExpectation('/Edit View Task Comment/')
)); ));
$this->Task->expectAt(2, 'createFile', array( $this->Task->expectAt(2, 'createFile', array(
TMP . 'view_task_comments' . DS . 'index.ctp', TMP . 'view_task_comments' . DS . 'index.ctp',
@ -388,11 +389,11 @@ class ViewTaskTest extends CakeTestCase {
)); ));
$this->Task->expectAt(2, 'createFile', array( $this->Task->expectAt(2, 'createFile', array(
TMP . 'view_task_comments' . DS . 'add.ctp', TMP . 'view_task_comments' . DS . 'add.ctp',
new PatternExpectation('/Add ViewTaskComment/') new PatternExpectation('/Add View Task Comment/')
)); ));
$this->Task->expectAt(3, 'createFile', array( $this->Task->expectAt(3, 'createFile', array(
TMP . 'view_task_comments' . DS . 'edit.ctp', TMP . 'view_task_comments' . DS . 'edit.ctp',
new PatternExpectation('/Edit ViewTaskComment/') new PatternExpectation('/Edit View Task Comment/')
)); ));
$this->Task->execute(); $this->Task->execute();
@ -425,11 +426,11 @@ class ViewTaskTest extends CakeTestCase {
)); ));
$this->Task->expectAt(2, 'createFile', array( $this->Task->expectAt(2, 'createFile', array(
TMP . 'view_task_comments' . DS . 'admin_add.ctp', TMP . 'view_task_comments' . DS . 'admin_add.ctp',
new PatternExpectation('/Add ViewTaskComment/') new PatternExpectation('/Add View Task Comment/')
)); ));
$this->Task->expectAt(3, 'createFile', array( $this->Task->expectAt(3, 'createFile', array(
TMP . 'view_task_comments' . DS . 'admin_edit.ctp', TMP . 'view_task_comments' . DS . 'admin_edit.ctp',
new PatternExpectation('/Edit ViewTaskComment/') new PatternExpectation('/Edit View Task Comment/')
)); ));
$this->Task->execute(); $this->Task->execute();