public function testSelectWithSharedLock() { $args = new ArgumentArray(); $driver = new MySQLDriver(); $query = new SelectQuery(); $query->select(array('id', 'name', 'phone', 'address'))->from('users', 'u')->where('name = :name', [':name' => 'Joan']); $query->lockInShareMode(); $sql = $query->toSql($driver, $args); $this->assertEquals('SELECT id, name, phone, address FROM users AS u WHERE name = :name LOCK IN SHARE MODE', $sql); $query->forUpdate(); $sql = $query->toSql($driver, $args); $this->assertEquals('SELECT id, name, phone, address FROM users AS u WHERE name = :name FOR UPDATE', $sql); }