public function setUp() { db_delete_multi('document'); db_delete_multi('post_image'); db_delete_multi('post'); db_delete_multi('category'); db_delete_multi('lc_sessions'); db_delete_multi('user'); db_insert('user', array('fullName' => 'Administrator', 'uid' => 1, 'username' => 'admin', 'password' => _encrypt('admin'), 'email' => '*****@*****.**', 'role' => 'admin', 'isMaster' => 1)); }
/** * Run seeding * @return boolean TRUE if seeded; otherwise FALSE */ public function run() { if ($this->load()) { # Purge before insert foreach ($this->tables as $table) { db_delete_multi($table); } # Arrange data to insert foreach ($this->data as $reference => $record) { if (!isset($record['__TABLE__'])) { continue; } $table = $record['__TABLE__']; unset($record['__TABLE__']); $slug = null; $data = array(); foreach ($record as $field => $value) { if ($field == 'slug') { $slug = $value; unset($record['slug']); } # Get foreign key field reference if (is_string($value) && strpos($value, __CLASS__ . '::') === 0) { $refKeyName = explode('::', $value); $refKey = end($refKeyName); $data[$field] = self::getReference($refKey); } else { $data[$field] = $value; } } # Make slug field at the start if ($slug) { $data = array('slug' => $slug) + $data; } if ($insertId = db_insert($table, $data)) { self::$references[$reference] = $insertId; } } return true; } else { return false; } }
public function testDeleteQuery() { $sql = db_delete('post', array('postId' => 1)); $this->assertEqual(self::oneline($sql), 'DELETE FROM `post` WHERE `postId` = 1 LIMIT 1'); $sql = db_delete_multi('post', array('postId between' => array(1, 10))); $this->assertEqual(self::oneline($sql), 'DELETE FROM `post` WHERE ( `postId` BETWEEN 1 AND 10 )'); $sql = db_delete_multi('post', array('uid' => 1, 'postId' => array(9, 10))); $this->assertEqual(self::oneline($sql), 'DELETE FROM `post` WHERE `uid` = 1 AND `postId` IN (9, 10)'); $sql = db_delete_multi('post', db_or(array('postId' => 1), array('postId' => array(9, 10)))); $this->assertEqual(self::oneline($sql), 'DELETE FROM `post` WHERE `postId` = 1 OR `postId` IN (9, 10)'); }