From 2b87be1d7c0d322ea4cce4f2b324d94668221e5a Mon Sep 17 00:00:00 2001 From: mark_story Date: Wed, 29 Apr 2009 22:40:49 -0400 Subject: [PATCH] Updating FixtureTask help Adding test case for FixtureTask --- cake/console/libs/tasks/fixture.php | 7 +- .../cases/console/libs/tasks/fixture.test.php | 121 ++++++++++++++++++ .../cases/console/libs/tasks/model.test.php | 6 +- 3 files changed, 130 insertions(+), 4 deletions(-) create mode 100644 cake/tests/cases/console/libs/tasks/fixture.test.php diff --git a/cake/console/libs/tasks/fixture.php b/cake/console/libs/tasks/fixture.php index f28193b8281..cd9b8b33b09 100644 --- a/cake/console/libs/tasks/fixture.php +++ b/cake/console/libs/tasks/fixture.php @@ -291,11 +291,12 @@ function _generateRecords($tableInfo, $recordCount = 1) { */ function help() { $this->hr(); - $this->out("Usage: cake bake fixture ..."); + $this->out("Usage: cake bake fixture "); $this->hr(); $this->out('Commands:'); - $this->out("\n\fixture \n\t\tbakes fixture with specified name."); - $this->out("\n\fixture all\n\t\tbakes all fixtures."); + $this->out("\nfixture \n\tbakes fixture with specified name."); + $this->out("\nfixture -count \n\tbakes fixture with records."); + $this->out("\nfixture all\n\tbakes all fixtures."); $this->out(""); $this->_stop(); } diff --git a/cake/tests/cases/console/libs/tasks/fixture.test.php b/cake/tests/cases/console/libs/tasks/fixture.test.php new file mode 100644 index 00000000000..60abb371eb8 --- /dev/null +++ b/cake/tests/cases/console/libs/tasks/fixture.test.php @@ -0,0 +1,121 @@ +Dispatcher =& new TestFixtureTaskMockShellDispatcher(); + $this->Task =& new MockFixtureTask($this->Dispatcher); + $this->Task->Dispatch = new $this->Dispatcher; + } +/** + * tearDown method + * + * @return void + * @access public + */ + function endTest() { + unset($this->Task, $this->Dispatcher); + ClassRegistry::flush(); + } +/** + * test that initialize sets the path + * + * @return void + **/ + function testInitialize() { + $this->Task->params['working'] = '/my/path'; + $this->Task->initialize(); + + $expected = '/my/path/tests/fixtures/'; + $this->assertEqual($this->Task->path, $expected); + } +/** + * test import option array generation + * + * @return void + **/ + function testImportOptions() { + $this->Task->setReturnValueAt(0, 'in', 'y'); + $this->Task->setReturnValueAt(1, 'in', 'y'); + + $result = $this->Task->importOptions('Article'); + $expected = array('schema' => 'Article', 'records' => true); + $this->assertEqual($result, $expected); + + $this->Task->setReturnValueAt(2, 'in', 'n'); + $this->Task->setReturnValueAt(3, 'in', 'n'); + + $result = $this->Task->importOptions('Article'); + $expected = array(); + $this->assertEqual($result, $expected); + } + +} +?> \ No newline at end of file diff --git a/cake/tests/cases/console/libs/tasks/model.test.php b/cake/tests/cases/console/libs/tasks/model.test.php index c3fe80066e5..5f6a35e0186 100644 --- a/cake/tests/cases/console/libs/tasks/model.test.php +++ b/cake/tests/cases/console/libs/tasks/model.test.php @@ -57,7 +57,11 @@ * @subpackage cake.tests.cases.console.libs.tasks */ class ModelTaskTest extends CakeTestCase { - +/** + * fixtures + * + * @var array + **/ var $fixtures = array('core.article', 'core.comment'); /** * setUp method