public function testSelect() { $query = new SQLSelect('"Title"', '"MyTable"'); $query->addSelect('"TestField"'); $this->assertSQLEquals('SELECT "Title", "TestField" FROM "MyTable"', $query->sql()); // Test replacement of select $query->setSelect(array('Field' => '"Field"', 'AnotherAlias' => '"AnotherField"')); $this->assertSQLEquals('SELECT "Field", "AnotherField" AS "AnotherAlias" FROM "MyTable"', $query->sql()); // Check that ' as ' selects don't get mistaken as aliases $query->addSelect(array('Relevance' => "MATCH (Title, MenuTitle) AGAINST ('Two as One')")); $this->assertSQLEquals('SELECT "Field", "AnotherField" AS "AnotherAlias", MATCH (Title, MenuTitle) AGAINST (' . '\'Two as One\') AS "Relevance" FROM "MyTable"', $query->sql()); }