| @@ 353-378 (lines=26) @@ | ||
| 350 | self::assertEquals('SUBSTR(column, 5, 2)', $this->_platform->getSubstringExpression('column', 5, 2)); |
|
| 351 | } |
|
| 352 | ||
| 353 | public function testModifiesLimitQuery() |
|
| 354 | { |
|
| 355 | self::assertEquals( |
|
| 356 | 'SELECT * FROM user', |
|
| 357 | $this->_platform->modifyLimitQuery('SELECT * FROM user', null, null) |
|
| 358 | ); |
|
| 359 | ||
| 360 | self::assertEquals( |
|
| 361 | 'SELECT db22.* FROM (SELECT db21.*, ROW_NUMBER() OVER() AS DC_ROWNUM FROM (SELECT * FROM user) db21) db22 WHERE db22.DC_ROWNUM <= 10', |
|
| 362 | $this->_platform->modifyLimitQuery('SELECT * FROM user', 10, 0) |
|
| 363 | ); |
|
| 364 | ||
| 365 | self::assertEquals( |
|
| 366 | 'SELECT db22.* FROM (SELECT db21.*, ROW_NUMBER() OVER() AS DC_ROWNUM FROM (SELECT * FROM user) db21) db22 WHERE db22.DC_ROWNUM <= 10', |
|
| 367 | $this->_platform->modifyLimitQuery('SELECT * FROM user', 10) |
|
| 368 | ); |
|
| 369 | ||
| 370 | self::assertEquals( |
|
| 371 | 'SELECT db22.* FROM (SELECT db21.*, ROW_NUMBER() OVER() AS DC_ROWNUM FROM (SELECT * FROM user) db21) db22 WHERE db22.DC_ROWNUM >= 6 AND db22.DC_ROWNUM <= 15', |
|
| 372 | $this->_platform->modifyLimitQuery('SELECT * FROM user', 10, 5) |
|
| 373 | ); |
|
| 374 | self::assertEquals( |
|
| 375 | 'SELECT db22.* FROM (SELECT db21.*, ROW_NUMBER() OVER() AS DC_ROWNUM FROM (SELECT * FROM user) db21) db22 WHERE db22.DC_ROWNUM >= 6 AND db22.DC_ROWNUM <= 5', |
|
| 376 | $this->_platform->modifyLimitQuery('SELECT * FROM user', 0, 5) |
|
| 377 | ); |
|
| 378 | } |
|
| 379 | ||
| 380 | public function testPrefersIdentityColumns() |
|
| 381 | { |
|
| @@ 102-109 (lines=8) @@ | ||
| 99 | ); |
|
| 100 | } |
|
| 101 | ||
| 102 | public function testGeneratesSqlSnippets() |
|
| 103 | { |
|
| 104 | self::assertEquals('SIMILAR TO', $this->_platform->getRegexpExpression(), 'Regular expression operator is not correct'); |
|
| 105 | self::assertEquals('"', $this->_platform->getIdentifierQuoteCharacter(), 'Identifier quote character is not correct'); |
|
| 106 | self::assertEquals('column1 || column2 || column3', $this->_platform->getConcatExpression('column1', 'column2', 'column3'), 'Concatenation expression is not correct'); |
|
| 107 | self::assertEquals('SUBSTRING(column FROM 5)', $this->_platform->getSubstringExpression('column', 5), 'Substring expression without length is not correct'); |
|
| 108 | self::assertEquals('SUBSTRING(column FROM 1 FOR 5)', $this->_platform->getSubstringExpression('column', 1, 5), 'Substring expression with length is not correct'); |
|
| 109 | } |
|
| 110 | ||
| 111 | public function testGeneratesTransactionCommands() |
|
| 112 | { |
|