/** * @covers Amiss\Sql\Query\Criteria::paramsAreNamed * @dataProvider dataForParamsAreNamed */ public function testParamsAreNamed($name, $areNamed, $params) { $criteria = new Query\Criteria(); $criteria->params = $params; $this->assertEquals($areNamed, $criteria->paramsAreNamed(), $name . ' failed'); }
protected function executeDelete(Meta $meta, Query\Criteria $criteria) { $table = $criteria->table ?: $meta->table; list($whereClause, $whereParams, $whereProps) = $criteria->buildClause($meta); if (!$whereClause) { throw new \UnexpectedValueException("Empty where clause"); } if ($whereProps) { $whereParams = $this->mapper->formatParams($meta, $whereProps, $whereParams); } $t = ($meta->schema ? "`{$meta->schema}`." : null) . "`{$table}`"; $sql = "DELETE FROM {$t} WHERE {$whereClause}"; $stmt = $this->getConnector()->prepare($sql)->execute($whereParams); }
function assertReplaced($expected, $clause, $fields, $tableAlias = null) { $meta = new \Amiss\Meta('stdClass', ['fields' => $fields]); $result = \Amiss\Sql\Query\Criteria::replaceFields($meta, $clause, $tableAlias); $this->assertEquals($expected, $result); }