public function testSimpleJoin() { $args = new ArgumentArray(); $driver = new MySQLDriver(); $driver->setQuoteColumn(true); $query = new SelectQuery(); ok($query); $query->select(array('u.id', 'u.name', 'u.phone', 'u.address', 'p.title' => 'post_title'))->from('users', 'u')->join('posts')->as('p')->on('p.user_id = u.id'); $query->where('u.name LIKE :name', [':name' => '%John%']); ok($query->getJoins()); $sql = $query->toSql($driver, $args); is('SELECT u.id, u.name, u.phone, u.address, p.title AS post_title FROM users AS u JOIN posts AS p ON (p.user_id = u.id) WHERE u.name LIKE :name', $sql); }
public function testQuoteColumns() { $driver = new MySQLDriver(); $driver->setQuoteColumn(true); $this->assertSame(['`name`', '`price`'], $driver->quoteColumns(['name', 'price'])); }