/**
  * @covers BindParamGenerator::orderBy
  */
 public function test_orderBy()
 {
     $gen = new BindParamGenerator();
     $gen->equal_('field1', 'value1')->or_()->equal_('field2', 'value2')->orderBy(array('field1' => 'ASC', 'field2' => 'DESC'));
     $param = $gen->generate();
     $actual = $param->getConditionStr();
     $expected = "field1=:field1_0 OR field2=:field2_1 ORDER BY field1 ASC,field2 DESC";
     $this->assertEquals($expected, $actual);
     $actual = $param->getParamArray();
     $expected = array('field1_0' => 'value1', 'field2_1' => 'value2');
     $this->assertEquals($expected, $actual);
 }
 /**
  * @covers SQLAdapter::__construct
  * @covers SQLAdapter::select
  * @covers SQLAdapter::delete
  */
 public function test_delete()
 {
     $config = new PDOConfig(array('database' => 'test', 'pass' => ''));
     $pdo = new PDOExtended($config);
     $adapter = new SQLAdapter($pdo);
     $generator = new BindParamGenerator();
     $generator->equal_('ID', 4);
     $actual = $adapter->delete('TBL_TEST', null);
     $expected = false;
     $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__);
     #
     # delete
     #
     $adapter = new SQLAdapter($pdo);
     $generator = new BindParamGenerator();
     $generator->equal_('ID', 4);
     $response = $adapter->delete('TBL_TEST', $generator->generate());
     $actual = $response->getErrorCode();
     $expected = '00000';
     $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__);
     #
     # try to select a deleted data
     #
     $adapter = new SQLAdapter($pdo);
     $generator = new BindParamGenerator();
     $generator->equal_('ID', 4);
     $response = $adapter->select('TBL_TEST', array('ID', 'FIELD1', 'FIELD3'), $generator->generate());
     $actual = $response->fetchAll();
     $expected = array();
     $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__);
 }