Skip to content

Commit

Permalink
make the default return false so it matches previous use, improve tes…
Browse files Browse the repository at this point in the history
…ts for new method
  • Loading branch information
dogmatic69 committed May 24, 2014
1 parent a657e41 commit 9dca564
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 21 deletions.
2 changes: 1 addition & 1 deletion lib/Cake/Network/CakeRequest.php
Expand Up @@ -875,7 +875,7 @@ public function data($name) {
*/
public function param($name) {
if (!isset($this->params[$name])) {
return Hash::get($this->params, $name);
return Hash::get($this->params, $name, false);
}
return $this->params[$name];
}
Expand Down
77 changes: 57 additions & 20 deletions lib/Cake/Test/Case/Network/CakeRequestTest.php
Expand Up @@ -1995,26 +1995,6 @@ public function testQueryWithArray() {
$this->assertNull($result);
}

/**
* Test using param()
*
* @return void
*/
public function testReadingParams() {
$request = new CakeRequest();
$request->addParams(array(
'controller' => 'posts',
'admin' => true,
'truthy' => 1,
'zero' => '0',
));
$this->assertFalse($request->param('not_set'));
$this->assertTrue($request->param('admin'));
$this->assertEquals(1, $request->param('truthy'));
$this->assertEquals('posts', $request->param('controller'));
$this->assertEquals('0', $request->param('zero'));
}

/**
* Test the data() method reading
*
Expand Down Expand Up @@ -2077,6 +2057,63 @@ public function testDataWritingFalsey() {
$this->assertSame('', $request->data['Post']['empty']);
}

/**
* @dataProvider paramReadingDataProvider
*/
public function testParamReading($toRead, $expected) {
$request = new CakeRequest('/');
$request->addParams(array(
'action' => 'index',
'foo' => 'bar',
'baz' => array(
'a' => array(
'b' => 'c',
),
),
'admin' => true,
'truthy' => 1,
'zero' => '0',
));
$this->assertEquals($expected, $request->param($toRead));
}

public function paramReadingDataProvider() {
return array(
array(
'action',
'index',
),
array(
'baz',
array(
'a' => array(
'b' => 'c',
),
),
),
array(
'baz.a.b',
'c',
),
array(
'does_not_exist',
false,
),
array(
'admin',
true,
),
array(
'truthy',
1,
),
array(
'zero',
'0',
),
);
}

/**
* Test accept language
*
Expand Down

0 comments on commit 9dca564

Please sign in to comment.