|
|
@@ -39,7 +39,7 @@ class JsonViewTest extends TestCase
|
|
|
*
|
|
|
* Note: array($data, $serialize, expected)
|
|
|
*
|
|
|
- * @return void
|
|
|
+ * @return array
|
|
|
*/
|
|
|
public static function renderWithoutViewProvider()
|
|
|
{
|
|
|
@@ -203,14 +203,33 @@ class JsonViewTest extends TestCase
|
|
|
JSON_HEX_TAG | JSON_HEX_APOS,
|
|
|
json_encode('<tag> \'quote\' "double-quote" &', JSON_HEX_TAG | JSON_HEX_APOS)
|
|
|
],
|
|
|
+
|
|
|
+ // Test render of NAN
|
|
|
+ [
|
|
|
+ ['value' => NAN],
|
|
|
+ true,
|
|
|
+ null,
|
|
|
+ '{"value":0}'
|
|
|
+ ],
|
|
|
+
|
|
|
+ // Test render of INF
|
|
|
+ [
|
|
|
+ ['value' => INF],
|
|
|
+ true,
|
|
|
+ null,
|
|
|
+ '{"value":0}'
|
|
|
+ ],
|
|
|
];
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* Test render with a valid string in _serialize.
|
|
|
*
|
|
|
+ * @param array $data
|
|
|
+ * @param string|null $serialize
|
|
|
+ * @param int|bool|null $jsonOptions
|
|
|
+ * @param string $expected
|
|
|
* @dataProvider renderWithoutViewProvider
|
|
|
- * @return void
|
|
|
*/
|
|
|
public function testRenderWithoutView($data, $serialize, $jsonOptions, $expected)
|
|
|
{
|
|
|
@@ -221,7 +240,7 @@ class JsonViewTest extends TestCase
|
|
|
$Controller->set($data);
|
|
|
$Controller->set('_serialize', $serialize);
|
|
|
$Controller->set('_jsonOptions', $jsonOptions);
|
|
|
- $Controller->viewClass = 'Json';
|
|
|
+ $Controller->viewBuilder()->className('Json');
|
|
|
$View = $Controller->createView();
|
|
|
$output = $View->render(false);
|
|
|
|
|
|
@@ -244,7 +263,7 @@ class JsonViewTest extends TestCase
|
|
|
'tags' => ['cakephp', 'framework'],
|
|
|
'_serialize' => 'tags'
|
|
|
]);
|
|
|
- $Controller->viewClass = 'Json';
|
|
|
+ $Controller->viewBuilder()->className('Json');
|
|
|
$View = $Controller->createView();
|
|
|
$View->render();
|
|
|
|
|
|
@@ -268,7 +287,7 @@ class JsonViewTest extends TestCase
|
|
|
'_serialize' => 'data',
|
|
|
'_jsonp' => true
|
|
|
]);
|
|
|
- $Controller->viewClass = 'Json';
|
|
|
+ $Controller->viewBuilder()->className('Json');
|
|
|
$View = $Controller->createView();
|
|
|
$output = $View->render(false);
|
|
|
|
|
|
@@ -310,7 +329,7 @@ class JsonViewTest extends TestCase
|
|
|
]
|
|
|
];
|
|
|
$Controller->set('user', $data);
|
|
|
- $Controller->viewClass = 'Json';
|
|
|
+ $Controller->viewBuilder()->className('Json');
|
|
|
$View = $Controller->createView();
|
|
|
$View->viewPath = $Controller->name;
|
|
|
$output = $View->render('index');
|