Open Journal Systems  3.3.0
FilterGroupDAOTest.php
1 <?php
2 
17 import('lib.pkp.tests.DatabaseTestCase');
18 import('lib.pkp.classes.filter.FilterGroup');
19 import('lib.pkp.classes.filter.FilterGroupDAO');
20 
25  public function testFilterGroupCrud() {
26  $filterGroupDao = DAORegistry::getDAO('FilterGroupDAO'); /* @var $filterGroupDao FilterGroupDAO */
27 
28  // Instantiate a test filter group object.
29  $testFilterGroup = new FilterGroup();
30  $testFilterGroup->setSymbolic('some-symbol');
31  $testFilterGroup->setDisplayName('translation.key.displayName');
32  $testFilterGroup->setDescription('translation.key.description');
33  $testFilterGroup->setInputType('primitive::string');
34  $testFilterGroup->setOutputType('primitive::integer');
35 
36  // Insert filter group instance.
37  $filterGroupId = $filterGroupDao->insertObject($testFilterGroup, 9999);
38  self::assertTrue(is_numeric($filterGroupId));
39  self::assertTrue($filterGroupId > 0);
40 
41  // Retrieve filter group instance by id.
42  $filterGroupById =& $filterGroupDao->getObjectById($filterGroupId);
43  self::assertEquals($testFilterGroup, $filterGroupById);
44 
45  // Update filter group instance.
46  $testFilterGroup->setSymbolic('some-other-symbol');
47  $testFilterGroup->setDisplayName('translation.key.otherDisplayName');
48  $testFilterGroup->setDescription('translation.key.otherDescription');
49  $testFilterGroup->setInputType('primitive::integer');
50  $testFilterGroup->setOutputType('primitive::string');
51 
52  $filterGroupDao->updateObject($testFilterGroup);
53  $filterGroupAfterUpdate =& $filterGroupDao->getObject($testFilterGroup);
54  self::assertEquals($testFilterGroup, $filterGroupAfterUpdate);
55 
56  // Retrieve filter group instance by symbolic name.
57  $filterGroupBySymbolic =& $filterGroupDao->getObjectBySymbolic('some-other-symbol');
58  self::assertEquals($testFilterGroup, $filterGroupAfterUpdate);
59 
60  // Delete filter group instance.
61  $filterGroupDao->deleteObjectById($filterGroupId);
62  self::assertNull($filterGroupDao->getObjectById($filterGroupId));
63  }
64 }
65 
FilterGroup
Class that represents filter groups.
Definition: FilterGroup.inc.php:45
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
FilterGroupDAOTest\testFilterGroupCrud
testFilterGroupCrud()
Definition: FilterGroupDAOTest.php:25
FilterGroupDAOTest
Test class for FilterGroupDAO.
Definition: FilterGroupDAOTest.php:21
DatabaseTestCase
Base class for unit tests that require database support. The schema TestName.setUp....
Definition: DatabaseTestCase.inc.php:23