/** * @test * * @throws Tx_Phpunit_Exception_Database */ public function getAutoIncrementReturnsOneForTruncatedTable() { Tx_Phpunit_Service_Database::enableQueryLogging(); $dbResult = $GLOBALS['TYPO3_DB']->sql_query('TRUNCATE TABLE tx_phpunit_test;'); if (!$dbResult) { throw new Tx_Phpunit_Exception_Database(1334438839); } $this->assertSame(1, $this->fixture->getAutoIncrement('tx_phpunit_test')); }
/** * Updates an integer field of a database table by one. This is mainly needed * for counting up the relation counter when creating a database relation. * * The field to update must be of type integer. * * @param string $tableName * name of the table, must not be empty * @param integer $uid * the UID of the record to modify, must be > 0 * @param string $fieldName * the field name of the field to modify, must not be empty * * @return void * * @throws InvalidArgumentException * @throws Tx_Phpunit_Exception_Database */ public function increaseRelationCounter($tableName, $uid, $fieldName) { if (!$this->isTableNameAllowed($tableName)) { throw new InvalidArgumentException('The table name "' . $tableName . '" is invalid. This means it is either empty or not in the list of allowed tables.', 1334439601); } if (!Tx_Phpunit_Service_Database::tableHasColumn($tableName, $fieldName)) { throw new InvalidArgumentException('The table ' . $tableName . ' has no column ' . $fieldName . '.', 1334439616); } Tx_Phpunit_Service_Database::enableQueryLogging(); $dbResult = $GLOBALS['TYPO3_DB']->sql_query('UPDATE ' . $tableName . ' SET ' . $fieldName . '=' . $fieldName . '+1 WHERE uid=' . $uid); if (!$dbResult) { throw new Tx_Phpunit_Exception_Database(1334439623); } if ($GLOBALS['TYPO3_DB']->sql_affected_rows() === 0) { throw new Tx_Phpunit_Exception_Database(1334439632); } $this->markTableAsDirty($tableName); }
/** * @test * * @throws \Tx_Phpunit_Exception_Database */ public function getAutoIncrementReturnsOneForTruncatedTable() { \Tx_Phpunit_Service_Database::enableQueryLogging(); $dbResult = \Tx_Phpunit_Service_Database::getDatabaseConnection()->sql_query('TRUNCATE TABLE tx_phpunit_test;'); if ($dbResult === false) { throw new \Tx_Phpunit_Exception_Database(1334438839); } self::assertSame(1, $this->subject->getAutoIncrement('tx_phpunit_test')); }