diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/simple_unit/ActiveRecord/FindByPksTestCase.php | 58 | ||||
| -rw-r--r-- | tests/test_tools/simpletest/errors.php | 2 | 
2 files changed, 59 insertions, 1 deletions
diff --git a/tests/simple_unit/ActiveRecord/FindByPksTestCase.php b/tests/simple_unit/ActiveRecord/FindByPksTestCase.php new file mode 100644 index 00000000..e7f3e3d0 --- /dev/null +++ b/tests/simple_unit/ActiveRecord/FindByPksTestCase.php @@ -0,0 +1,58 @@ +<?php +
 +Prado::using('System.Data.ActiveRecord.TActiveRecord');
 +require_once(dirname(__FILE__).'/records/DepartmentRecord.php');
 +require_once(dirname(__FILE__).'/records/DepSections.php');
 +
 +class FindByPksTestCase extends UnitTestCase
 +{
 +	function setup()
 +	{
 +		$conn = new TDbConnection('pgsql:host=localhost;dbname=test', 'test','test');
 +		TActiveRecordManager::getInstance()->setDbConnection($conn);
 +	}
 +
 +	function test_find_by_1pk()
 +	{
 +		$dep = DepartmentRecord::finder()->findByPk(1);
 +		$this->assertNotNull($dep);
 +		$this->assertEqual($dep->department_id, 1);
 +	}
 +
 +	function test_find_by_pks()
 +	{
 +		$deps = DepartmentRecord::finder()->findAllByPks(1,2,4);
 +		$this->assertEqual(count($deps), 3);
 +
 +		$this->assertEqual($deps[0]->department_id, 1);
 +		$this->assertEqual($deps[1]->department_id, 2);
 +		$this->assertEqual($deps[2]->department_id, 4);
 +	}
 +
 +	function test_find_by_pks_with_invalid()
 +	{
 +		$deps = DepartmentRecord::finder()->findAllByPks(4,2,14);
 +		$this->assertEqual(count($deps), 2);
 +
 +		$this->assertEqual($deps[0]->department_id, 2);
 +		$this->assertEqual($deps[1]->department_id, 4);
 +	}
 +
 +	function test_find_by_composite_pks()
 +	{
 +		$ds = DepSections::finder()->findAllByPks(array(1,1), array(2,5));
 +		$this->assertEqual(count($ds), 2);
 +
 +		$this->assertIsDepSection($ds[0], 1, 1);
 +		$this->assertIsDepSection($ds[1], 2, 5);
 +	}
 +
 +	function assertIsDepSection($dep, $dep_id, $sec_id)
 +	{
 +		$this->assertTrue($dep instanceof DepSections);
 +		$this->assertEqual($dep->department_id, $dep_id);
 +		$this->assertEqual($dep->section_id, $sec_id);
 +	}
 +}
 + +?>
\ No newline at end of file diff --git a/tests/test_tools/simpletest/errors.php b/tests/test_tools/simpletest/errors.php index e2f6eb04..729883e9 100644 --- a/tests/test_tools/simpletest/errors.php +++ b/tests/test_tools/simpletest/errors.php @@ -150,7 +150,7 @@                      E_COMPILE_WARNING => 'E_COMPILE_WARNING',                      E_USER_ERROR => 'E_USER_ERROR',                      E_USER_WARNING => 'E_USER_WARNING', -                    E_USER_NOTICE => 'E_USER_NOTICE'); +                    E_USER_NOTICE => 'E_USER_NOTICE', 4096 => 'E??');              return $map[$severity];          }      }  | 
