public function testInnerJoinOnObjects()
{
// inner query
$innerQuery = new Query();
$innerQuery->select('groupname', 'groupid')->from('group');
// outer query
$query = new Query();
$query->select('firstname')->from('user')->innerJoin($innerQuery, 'USING(groupid)')->where('lastname=?', 'Castle');
$innerQuery->where('derived.firstname = ?', 'frank');
$this->assertEquals('SELECT firstname FROM user ' . 'INNER JOIN (SELECT groupname, groupid FROM group) derived USING(groupid) ' . 'WHERE (lastname=\'Castle\')', $query->toSql());
}