コード例 #1
0
 /**
  *
  * @dataProvider getHavingStringProvider
  */
 public function testGetHavingString($havings, $expected, $expectedFormatted, $expectedBoundParameters)
 {
     foreach ($havings as $having) {
         $nbHaving = count($having);
         if ($nbHaving == 4) {
             $this->queryBuilder->having($having[0], $having[1], $having[2], $having[3]);
         } elseif ($nbHaving >= 1 && $nbHaving <= 2) {
             if ($having[0] == '(') {
                 if (isset($having[1])) {
                     $this->queryBuilder->openHaving($having[1]);
                 } else {
                     $this->queryBuilder->openHaving();
                 }
             } elseif ($having[0] == ')') {
                 $this->queryBuilder->closeHaving();
             }
         }
     }
     $this->assertEquals($expected, $this->queryBuilder->getHavingString());
     $this->assertEquals($expectedFormatted, $this->queryBuilder->getHavingString(true));
     $this->assertEquals($expectedBoundParameters, $this->queryBuilder->getBoundParameters());
     $this->assertEquals($expectedBoundParameters, $this->queryBuilder->getBoundParameters(false, 'having'));
     $this->assertEquals(array(), $this->queryBuilder->getBoundParameters(false, 'where'));
 }