diff --git a/cake/tests/cases/libs/model/model.test.php b/cake/tests/cases/libs/model/model.test.php index a3ca68624..05be03789 100644 --- a/cake/tests/cases/libs/model/model.test.php +++ b/cake/tests/cases/libs/model/model.test.php @@ -47,7 +47,8 @@ class ModelTest extends CakeTestCase { 'core.project', 'core.thread', 'core.message', 'core.bid', 'core.portfolio', 'core.item', 'core.items_portfolio', 'core.syfile', 'core.image', 'core.device_type', 'core.device_type_category', 'core.feature_set', 'core.exterior_type_category', 'core.document', 'core.device', 'core.document_directory', 'core.primary_model', 'core.secondary_model', 'core.something', - 'core.something_else', 'core.join_thing', 'core.join_a', 'core.join_b', 'core.join_c', 'core.join_a_b', 'core.join_a_c' + 'core.something_else', 'core.join_thing', 'core.join_a', 'core.join_b', 'core.join_c', 'core.join_a_b', 'core.join_a_c', + 'core.uuid' ); function start() { @@ -2762,10 +2763,18 @@ class ModelTest extends CakeTestCase { if (PHP_VERSION === '5.1.6') { $this->assertFalse($afterFindModel != $duplicateModel); } - $this->assertEqual($afterFindData, $noAfterFindData); } + function testAutoSaveUuid() { + $this->loadFixtures('Uuid'); + $this->model =& new Uuid(); + $this->model->save(array('title' => 'Test record')); + $result = $this->model->findByTitle('Test record'); + $this->assertEqual(array_keys($result['Uuid']), array('id', 'title', 'created', 'updated')); + $this->assertEqual(strlen($result['Uuid']['id']), 36); + } + function testAfterFindAssociation() { } diff --git a/cake/tests/cases/libs/model/models.php b/cake/tests/cases/libs/model/models.php index 6e59c53fc..439602353 100644 --- a/cake/tests/cases/libs/model/models.php +++ b/cake/tests/cases/libs/model/models.php @@ -491,6 +491,15 @@ class AssociationTest2 extends CakeTestModel { */ class Callback extends CakeTestModel { +} +/** + * Short description for class. + * + * @package cake.tests + * @subpackage cake.tests.cases.libs.model + */ +class Uuid extends CakeTestModel { + var $name = 'Uuid'; } /** * Short description for class. diff --git a/cake/tests/fixtures/uuid_fixture.php b/cake/tests/fixtures/uuid_fixture.php new file mode 100644 index 000000000..4cda5fd2a --- /dev/null +++ b/cake/tests/fixtures/uuid_fixture.php @@ -0,0 +1,51 @@ + + * Copyright 2005-2008, Cake Software Foundation, Inc. + * 1785 E. Sahara Avenue, Suite 490-204 + * Las Vegas, Nevada 89104 + * + * Licensed under The Open Group Test Suite License + * Redistributions of files must retain the above copyright notice. + * + * @filesource + * @copyright Copyright 2005-2008, Cake Software Foundation, Inc. + * @link https://trac.cakephp.org/wiki/Developement/TestSuite CakePHP(tm) Tests + * @package cake.tests + * @subpackage cake.tests.fixtures + * @since CakePHP(tm) v 1.2.0.6700 + * @version $Revision: 6354 $ + * @modifiedby $LastChangedBy: nate $ + * @lastmodified $Date: 2008-01-10 02:02:33 -0500 (Thu, 10 Jan 2008) $ + * @license http://www.opensource.org/licenses/opengroup.php The Open Group Test Suite License + */ +/** + * Short description for class. + * + * @package cake.tests + * @subpackage cake.tests.fixtures + */ +class UuidFixture extends CakeTestFixture { + var $name = 'Uuid'; + var $fields = array( + 'id' => array('type' => 'string', 'length' => 36, 'key' => 'primary'), + 'title' => 'string', + 'created' => 'datetime', + 'updated' => 'datetime' + ); + var $records = array( + array('id' => '47c36f9c-bc00-4d17-9626-4e183ca6822b', 'title' => 'Unique record 1', 'created' => '2008-03-13 01:16:23', 'updated' => '2008-03-13 01:18:31'), + array('id' => '47c36f9c-f2b0-43f5-b3f7-4e183ca6822b', 'title' => 'Unique record 2', 'created' => '2008-03-13 01:18:24', 'updated' => '2008-03-13 01:20:32'), + array('id' => '47c36f9c-0ffc-4084-9b03-4e183ca6822b', 'title' => 'Unique record 3', 'created' => '2008-03-13 01:20:25', 'updated' => '2008-03-13 01:22:33'), + array('id' => '47c36f9c-2578-4c2e-aeab-4e183ca6822b', 'title' => 'Unique record 4', 'created' => '2008-03-13 01:22:26', 'updated' => '2008-03-13 01:24:34'), + ); +} + +?> \ No newline at end of file