Skip to content

Commit

Permalink
don't restrict addParam() to string values
Browse files Browse the repository at this point in the history
  • Loading branch information
Markus Kalkbrenner committed Apr 8, 2019
1 parent 6574f1f commit b0cecb2
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 4 deletions.
4 changes: 2 additions & 2 deletions src/Core/Query/AbstractQuery.php
Original file line number Diff line number Diff line change
Expand Up @@ -149,11 +149,11 @@ public function getHelper(): Helper
* Therefore the params are limited in functionality. Only add and get
*
* @param string $name
* @param string $value
* @param mixed $value
*
* @return self Provides fluent interface
*/
public function addParam(string $name, string $value): QueryInterface
public function addParam(string $name, $value): QueryInterface
{
$this->params[$name] = $value;

Expand Down
4 changes: 2 additions & 2 deletions src/Core/Query/QueryInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,11 @@ public function getHelper(): Helper;
* Therefore the params are limited in functionality. Only add and get
*
* @param string $name
* @param string $value
* @param mixed $value
*
* @return self Provides fluent interface
*/
public function addParam(string $name, string $value): self;
public function addParam(string $name, $value): self;

/**
* Get extra params.
Expand Down
30 changes: 30 additions & 0 deletions tests/Core/Query/RequestBuilderTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,36 @@ public function testBuild()
);
}

public function testBuildWithBoolean()
{
$query = new SelectQuery();
$query->addParam('p1', 'v1');
$query->addParam('p2', true);
$query->addParam('p3', false);
$query->setResponseWriter('xyz');
$request = $this->builder->build($query);

$this->assertSame(
'select?omitHeader=true&p1=v1&p2=true&p3=false&wt=xyz',
urldecode($request->getUri())
);
}

public function testBuildWithInteger()
{
$query = new SelectQuery();
$query->addParam('p1', 'v1');
$query->addParam('p2', 1);
$query->addParam('p3', 0);
$query->setResponseWriter('xyz');
$request = $this->builder->build($query);

$this->assertSame(
'select?omitHeader=true&p1=v1&p2=1&p3=0&wt=xyz',
urldecode($request->getUri())
);
}

public function testBuildWithHeader()
{
$query = new SelectQuery();
Expand Down

0 comments on commit b0cecb2

Please sign in to comment.