Commit f11e39cc authored by piccoloprincipe's avatar piccoloprincipe

renamed and separated test methods to conform to agile documentation (addresses #2316)

parent 32363a20
...@@ -56,19 +56,23 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -56,19 +56,23 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
} }
} }
public function testWithoutWhere() public function testSupportsDeleteWithoutWhereAndFrom()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u',
'DELETE FROM cms_users' 'DELETE FROM cms_users'
); );
}
public function testSupportsDeleteWithoutWhere()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE FROM Doctrine\Tests\Models\CMS\CmsUser u', 'DELETE FROM Doctrine\Tests\Models\CMS\CmsUser u',
'DELETE FROM cms_users' 'DELETE FROM cms_users'
); );
} }
public function testWithWhere() public function testSupportsWhereClause()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id = ?1', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id = ?1',
...@@ -76,13 +80,16 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -76,13 +80,16 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
); );
} }
public function testWithConditionalExpressions() public function testSupportsWhereOrExpressions()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username = ?1 OR u.name = ?2', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username = ?1 OR u.name = ?2',
'DELETE FROM cms_users WHERE username = ? OR name = ?' 'DELETE FROM cms_users WHERE username = ? OR name = ?'
); );
}
public function testSupportsWhereNestedConditionalExpressions()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id = ?1 OR ( u.username = ?2 OR u.name = ?3)', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id = ?1 OR ( u.username = ?2 OR u.name = ?3)',
'DELETE FROM cms_users WHERE id = ? OR (username = ? OR name = ?)' 'DELETE FROM cms_users WHERE id = ? OR (username = ? OR name = ?)'
...@@ -94,7 +101,7 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -94,7 +101,7 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
//); //);
} }
public function testParserIsCaseAgnostic() public function testIsCaseAgnostic()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
"delete from Doctrine\Tests\Models\CMS\CmsUser u where u.username = ?1", "delete from Doctrine\Tests\Models\CMS\CmsUser u where u.username = ?1",
...@@ -102,7 +109,7 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -102,7 +109,7 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
); );
} }
public function testWithConditionalTerms() public function testSupportsAndCondition()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username = ?1 AND u.name = ?2", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username = ?1 AND u.name = ?2",
...@@ -110,125 +117,160 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -110,125 +117,160 @@ class DeleteSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
); );
} }
public function testWithConditionalFactors() public function testSupportsWhereNot()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT u.id != ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT u.id != ?1",
"DELETE FROM cms_users WHERE NOT id <> ?" "DELETE FROM cms_users WHERE NOT id <> ?"
); );
}
public function testSupportsWhereNotWithParentheses()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT ( u.id != ?1 )", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT ( u.id != ?1 )",
"DELETE FROM cms_users WHERE NOT (id <> ?)" "DELETE FROM cms_users WHERE NOT (id <> ?)"
); );
}
public function testSupportsWhereNotWithAndExpression()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT ( u.id != ?1 AND u.username = ?2 )", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE NOT ( u.id != ?1 AND u.username = ?2 )",
"DELETE FROM cms_users WHERE NOT (id <> ? AND username = ?)" "DELETE FROM cms_users WHERE NOT (id <> ? AND username = ?)"
); );
} }
// ConditionalPrimary was already tested (see testDeleteWithWhere() and testDeleteWithConditionalFactors()) // ConditionalPrimary was already tested (see testSupportsWhereClause() and testSupportsWhereNot())
public function testWithExprAndComparison() public function testSupportsGreaterThanComparisonClause()
{ {
// id = ? was already tested (see testDeleteWithWhere()) // id = ? was already tested (see testDeleteWithWhere())
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id > ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id > ?1",
"DELETE FROM cms_users WHERE id > ?" "DELETE FROM cms_users WHERE id > ?"
); );
}
public function testSupportsGreaterThanOrEqualToComparisonClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id >= ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id >= ?1",
"DELETE FROM cms_users WHERE id >= ?" "DELETE FROM cms_users WHERE id >= ?"
); );
}
public function testSupportsLessThanComparisonClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id < ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id < ?1",
"DELETE FROM cms_users WHERE id < ?" "DELETE FROM cms_users WHERE id < ?"
); );
}
public function testSupportsLessThanOrEqualToComparisonClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id <= ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id <= ?1",
"DELETE FROM cms_users WHERE id <= ?" "DELETE FROM cms_users WHERE id <= ?"
); );
}
public function testSupportsNotEqualToComparisonClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id <> ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id <> ?1",
"DELETE FROM cms_users WHERE id <> ?" "DELETE FROM cms_users WHERE id <> ?"
); );
}
public function testSupportsNotEqualToComparisonClauseExpressedWithExclamationMark()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id != ?1", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id != ?1",
"DELETE FROM cms_users WHERE id <> ?" "DELETE FROM cms_users WHERE id <> ?"
); );
} }
public function testWithExprAndBetween() public function testSupportsNotBetweenClause()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id NOT BETWEEN ?1 AND ?2", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id NOT BETWEEN ?1 AND ?2",
"DELETE FROM cms_users WHERE id NOT BETWEEN ? AND ?" "DELETE FROM cms_users WHERE id NOT BETWEEN ? AND ?"
); );
}
public function testSupportsBetweenClauseUsedWithAndClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id BETWEEN ?1 AND ?2 AND u.username != ?3", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id BETWEEN ?1 AND ?2 AND u.username != ?3",
"DELETE FROM cms_users WHERE id BETWEEN ? AND ? AND username <> ?" "DELETE FROM cms_users WHERE id BETWEEN ? AND ? AND username <> ?"
); );
} }
public function testWithExprAndLike() public function testSupportsNotLikeClause()
{ {
// "WHERE" Expression LikeExpression // "WHERE" Expression LikeExpression
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username NOT LIKE ?1', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username NOT LIKE ?1',
'DELETE FROM cms_users WHERE username NOT LIKE ?' 'DELETE FROM cms_users WHERE username NOT LIKE ?'
); );
}
public function testSupportsLikeClauseWithEscapeExpression()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
"DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username LIKE ?1 ESCAPE '\\'", "DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.username LIKE ?1 ESCAPE '\\'",
"DELETE FROM cms_users WHERE username LIKE ? ESCAPE '\\'" "DELETE FROM cms_users WHERE username LIKE ? ESCAPE '\\'"
); );
} }
public function testWithExprAndNull() public function testSupportsIsNullClause()
{ {
// "WHERE" Expression NullComparisonExpression // "WHERE" Expression NullComparisonExpression
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.name IS NULL', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.name IS NULL',
'DELETE FROM cms_users WHERE name IS NULL' 'DELETE FROM cms_users WHERE name IS NULL'
); );
}
public function testSupportsIsNotNullClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.name IS NOT NULL', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.name IS NOT NULL',
'DELETE FROM cms_users WHERE name IS NOT NULL' 'DELETE FROM cms_users WHERE name IS NOT NULL'
); );
} }
public function testWithPrimaryAsAtom() public function testSupportsAtomExpressionAsClause()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE 1 = 1', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE 1 = 1',
'DELETE FROM cms_users WHERE 1 = 1' 'DELETE FROM cms_users WHERE 1 = 1'
); );
}
public function testSupportsParameterizedAtomExpression()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE ?1 = 1', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE ?1 = 1',
'DELETE FROM cms_users WHERE ? = 1' 'DELETE FROM cms_users WHERE ? = 1'
); );
} }
public function testWithExprAndIn() public function testSupportsInClause()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id IN ( ?1, ?2, ?3, ?4 )', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id IN ( ?1, ?2, ?3, ?4 )',
'DELETE FROM cms_users WHERE id IN (?, ?, ?, ?)' 'DELETE FROM cms_users WHERE id IN (?, ?, ?, ?)'
); );
}
public function testSupportsNotInClause()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id NOT IN ( ?1, ?2 )', 'DELETE Doctrine\Tests\Models\CMS\CmsUser u WHERE u.id NOT IN ( ?1, ?2 )',
'DELETE FROM cms_users WHERE id NOT IN (?, ?)' 'DELETE FROM cms_users WHERE id NOT IN (?, ?)'
); );
} }
} }
...@@ -56,16 +56,19 @@ class UpdateSqlGenerationTest extends \Doctrine\Tests\OrmTestCase ...@@ -56,16 +56,19 @@ class UpdateSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
} }
} }
public function testWithoutWhere() public function testSupportsQueriesWithoutWhere()
{ {
$this->assertSqlGeneration( $this->assertSqlGeneration(
'UPDATE Doctrine\Tests\Models\CMS\CmsUser u SET u.name = ?1', 'UPDATE Doctrine\Tests\Models\CMS\CmsUser u SET u.name = ?1',
'UPDATE cms_users SET name = ?' 'UPDATE cms_users SET name = ?'
); );
}
public function testSupportsMultipleFieldsWithoutWhere()
{
$this->assertSqlGeneration( $this->assertSqlGeneration(
'UPDATE Doctrine\Tests\Models\CMS\CmsUser u SET u.name = ?1, u.username = ?2', 'UPDATE Doctrine\Tests\Models\CMS\CmsUser u SET u.name = ?1, u.username = ?2',
'UPDATE cms_users SET name = ?, username = ?' 'UPDATE cms_users SET name = ?, username = ?'
); );
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment