Adds columns to include in the data set for the given table.
public setExcludeColumnsForTable ( string $table, array $columns ) | ||
$table | string | |
$columns | array |
public function testIncludeExcludeMixedDataSet() { $constraint = new PHPUnit_Extensions_Database_Constraint_DataSetIsEqual($this->expectedDataSet); $dataSet = new PHPUnit_Extensions_Database_DataSet_FlatXmlDataSet(dirname(__FILE__) . '/../_files/XmlDataSets/FilteredTestComparison.xml'); $filteredDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filteredDataSet->addIncludeTables(array('table1', 'table3')); $filteredDataSet->setExcludeColumnsForTable('table1', array('table1_id')); $filteredDataSet->setIncludeColumnsForTable('table3', array('column9', 'column10', 'column11', 'column12')); self::assertThat($filteredDataSet, $constraint); }
public function testImportWithoutHeaders() { $tableName = 'csv_2cols'; $result = $this->import->setIgnoreLines(0)->import($tableName, ['col1', 'col2'], [new CsvFile(__DIR__ . '/_data/csv-import/escaping/raw-without-headers.csv', "\t", "", "\\")]); $expectedDataset = $this->createMySQLXMLDataSet(__DIR__ . "/_data/csv-import/escaping/expectation.standard.xml"); $currentDataset = $this->getConnection()->createDataSet(); $expectedDataset = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($expectedDataset, [$tableName]); $expectedDataset->setExcludeColumnsForTable($tableName, ['timestamp']); $currentDataset = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($currentDataset, [$tableName]); $currentDataset->setExcludeColumnsForTable($tableName, ['timestamp']); $this->assertTablesEqual($expectedDataset->getTable($tableName), $currentDataset->getTable($tableName)); $this->assertEmpty($result->getWarnings()); }
public function testAddMessageNoAttach() { $message = new ModelMessage(null, 'ivan', '2015-11-15 13:48:26', 1, 'Cool!', null); $actual1 = $message->addMessage(null); //fwrite(STDERR, print_r($actual1, true)); $expected1 = ['id' => 16, 'username' => 'ivan', 'timestamp' => '2015-11-15 13:48:26', 'thread_id' => '1', 'text' => 'Cool!', 'likes' => 0, 'didlike' => false, 'attachments' => null]; $this->assertEquals($expected1, $actual1); $actual = $this->getConnection()->createDataSet(['messages']); $actualFilter = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($actual); $actualFilter->setExcludeColumnsForTable('messages', ['timestamp']); $expected = $this->createFlatXmlDataSet('_files/messages_add.xml'); $expectedFilter = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($expected); $expectedFilter->setExcludeColumnsForTable('messages', ['timestamp']); $this->assertDataSetsEqual($expectedFilter, $actualFilter); }
public function testUsersResetAssignments() { $role_id_1 = self::$rbac->Roles->add('roles_1', 'roles Description 1'); $role_id_2 = self::$rbac->Roles->add('roles_2', 'roles Description 2'); $role_id_3 = self::$rbac->Roles->add('roles_3', 'roles Description 3'); self::$rbac->Users->assign($role_id_1, 5); self::$rbac->Users->assign($role_id_2, 5); self::$rbac->Users->assign($role_id_3, 5); self::$rbac->Users->resetAssignments(true); $dataSet = $this->getConnection()->createDataSet(); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addIncludeTables(array(self::$rbac->Users->tablePrefix() . 'userroles')); $filterDataSet->setExcludeColumnsForTable(self::$rbac->Users->tablePrefix() . 'userroles', array('assignmentdate')); $expectedDataSet = $this->_dataSet('users/expected_reset_assignments'); $this->assertDataSetsEqual($expectedDataSet, $filterDataSet); }
public function testRolesRemoveRecursive() { $role_id_1 = $this->Instance()->add($this->type() . '_1', $this->type() . ' Description 1'); $role_id_2 = $this->Instance()->add($this->type() . '_2', $this->type() . ' Description 2', $role_id_1); $role_id_3 = $this->Instance()->add($this->type() . '_3', $this->type() . ' Description 3', $role_id_1); $role_id_4 = $this->Instance()->add($this->type() . '_4', $this->type() . ' Description 4'); $perm_id_1 = self::$rbac->Permissions->add('permissions_1', 'permissions Description 1'); $this->Instance()->assign($role_id_1, $perm_id_1); self::$rbac->Users->assign($role_id_1, 5); $result = $this->Instance()->remove($role_id_1, true); $dataSet = $this->getConnection()->createDataSet(); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addIncludeTables(array($this->Instance()->tablePrefix() . 'rolepermissions', $this->Instance()->tablePrefix() . $this->type(), $this->Instance()->tablePrefix() . 'userroles')); $filterDataSet->setExcludeColumnsForTable($this->Instance()->tablePrefix() . 'rolepermissions', array('assignmentdate')); $filterDataSet->setExcludeColumnsForTable($this->Instance()->tablePrefix() . 'userroles', array('assignmentdate')); $expectedDataSet = $this->_dataSet($this->type() . '/expected_remove_recursive'); $this->assertDataSetsEqual($expectedDataSet, $filterDataSet); }
private function getFilterDataset() { #Example showing include block /* // Filtered Include dataset $dataSet = $this->getArrayDataset(); $filterDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addIncludeTables(array('user')); $filterDataSet->setIncludeColumnsForTable('user', array('id')); return $filterDataSet; #*/ #Example showing exclude block #/* // Filtered Exclude dataset $dataSet = $this->getArrayDataset(); $filterDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addExcludeTables(array('user', 'address')); // only keep the guestbook table! $filterDataSet->setExcludeColumnsForTable('class', array('uid')); return $filterDataSet; #*/ }
public function testPermissionsUnassignRoles() { $perm_id_1 = $this->Instance()->add($this->type() . '_1', $this->type() . ' Description 1'); $role_id_1 = self::$rbac->Roles->add('roles_1', 'roles Description 1'); $role_id_2 = self::$rbac->Roles->add('roles_2', 'roles Description 2'); $role_id_3 = self::$rbac->Roles->add('roles_3', 'roles Description 3'); $this->Instance()->assign($role_id_1, $perm_id_1); $this->Instance()->assign($role_id_2, $perm_id_1); $this->Instance()->assign($role_id_3, $perm_id_1); $result = $this->Instance()->unassignRoles($perm_id_1); $dataSet = $this->getConnection()->createDataSet(); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addIncludeTables(array($this->Instance()->tablePrefix() . 'rolepermissions')); $filterDataSet->setExcludeColumnsForTable($this->Instance()->tablePrefix() . 'rolepermissions', array('assignmentdate')); $expectedDataSet = $this->_dataSet('/' . $this->type() . '/expected_unassign_roles'); $this->assertDataSetsEqual($expectedDataSet, $filterDataSet); }
public function testResetPermRoleAssignments() { $perm_id_1 = self::$rbac->Permissions->add('permissions_1', 'permissions Description 1'); $perm_id_2 = self::$rbac->Permissions->add('permissions_2', 'permissions Description 2'); $perm_id_3 = self::$rbac->Permissions->add('permissions_3', 'permissions Description 3'); $role_id_1 = self::$rbac->Roles->add('roles_1', 'roles Description 1'); $role_id_2 = self::$rbac->Roles->add('roles_2', 'roles Description 2'); $role_id_3 = self::$rbac->Roles->add('roles_3', 'roles Description 3'); $this->Instance()->assign($role_id_1, $perm_id_1); $this->Instance()->assign($role_id_2, $perm_id_2); $this->Instance()->assign($role_id_3, $perm_id_3); $this->Instance()->resetAssignments(true); $dataSet = $this->getConnection()->createDataSet(); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->addIncludeTables(array(self::$rbac->Users->tablePrefix() . 'rolepermissions')); $filterDataSet->setExcludeColumnsForTable($this->Instance()->tablePrefix() . 'rolepermissions', array('assignmentdate')); $expectedDataSet = $this->_dataSet('base/expected_reset_assignments_' . $this->type()); $this->assertDataSetsEqual($expectedDataSet, $filterDataSet); }
/** * @covers ::update */ public function testUpdate() { $carTable = new CarTable($this->pdo); $cars = $carTable->findAll(); $this->assertCount(2, $cars); /** * Alter first car */ $firstCar = $cars[0]; $this->assertFalse($firstCar->isAltered()); $firstCar->set('horsepower', 21); $this->assertTrue($firstCar->isAltered()); $carTable->update($firstCar); /** * Alter second car */ $secondCar = $cars[1]; $this->assertFalse($secondCar->isAltered()); $secondCar->set('horsepower', 41); $this->assertTrue($secondCar->isAltered()); $carTable->update($secondCar); /** * Assert data set */ $expectedCsvDataSet = new \PHPUnit_Extensions_Database_DataSet_CsvDataSet(); $expectedCsvDataSet->addTable('cars', dirname(__FILE__) . '/../Fixture/cars_after-update.csv'); $expectedDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($expectedCsvDataSet); $expectedDataSet->setExcludeColumnsForTable('cars', ['modified', 'created']); $dataSet = new \PHPUnit_Extensions_Database_DataSet_QueryDataSet($this->getConnection()); $dataSet->addTable('cars', 'SELECT * FROM `cars`'); $dataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $dataSet->setExcludeColumnsForTable('cars', ['modified', 'created']); $this->assertDataSetsEqual($expectedDataSet, $dataSet); }
public function testManagerReset() { $role_id_1 = self::$rbac->Roles->add('roles_1', 'roles Description 1'); $perm_id_1 = self::$rbac->Permissions->add('permissions_1', 'permissions Description 1'); self::$rbac->Roles->assign($role_id_1, $perm_id_1); self::$rbac->Users->assign($role_id_1, 5); $result = self::$rbac->reset(true); $dataSet = $this->getConnection()->createDataSet(); $filterDataSet = new \PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); $filterDataSet->setExcludeColumnsForTable(self::$rbac->tablePrefix() . 'rolepermissions', array('assignmentdate')); $filterDataSet->setExcludeColumnsForTable(self::$rbac->tablePrefix() . 'userroles', array('assignmentdate')); $expectedDataSet = $this->_dataSet('/manager/expected_reset'); $this->assertDataSetsEqual($expectedDataSet, $filterDataSet); }
public function filterTable($tableName, $dataSet) { $filterDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($dataSet); if (is_string($tableName)) { $tableName = array($tableName); } foreach ($tableName as $name) { $filterDataSet->setExcludeColumnsForTable($name, array('created', 'last_updated')); } return $filterDataSet; }