public function testAutoConnect() { $datastore = new MockQlDataStore(); $connection = new MockPdoConnection(); $connection->config(); $connection->setResolver(new DalResolver()); $datastore->setConnection($connection); $dao = new MockQlDao(); $dao->username = time() . 'user'; $dao->display = 'User ' . date("Y-m-d"); $datastore->save($dao); $datastore->getConnection()->disconnect(); $new = new MockQlDao(); $new->id = $dao->id; $datastore->load($new); $this->assertEquals($dao->username, $new->username); $datastore->delete($new); }
public function testExecute() { $datastore = new MockQlDataStore(); $connection = new MockAbstractQlDataConnection(); $datastore->setConnection($connection); $dao = new MockQlDao(); $dao->id = 4; $dao->display = 'John Smith'; $dao->boolTest = false; $datastore->save($dao); $datastore->execute(QueryBuilder::deleteFrom($dao->getTableName(), (new EqualPredicate())->setField('id')->setExpression(NumericExpression::create(4)))); $this->assertEquals('DELETE FROM `mock_ql_daos` WHERE `id` = ?', $connection->getExecutedQuery()); $this->assertEquals([4], $connection->getExecutedQueryValues()); }