|
|
@@ -24,6 +24,50 @@ use Cake\View\ViewBuilder;
|
|
|
*/
|
|
|
class ViewBuilderTest extends TestCase
|
|
|
{
|
|
|
+ public function testSetVar()
|
|
|
+ {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+
|
|
|
+ $builder->setVar('testing', 'value');
|
|
|
+ $this->assertSame('value', $builder->getVar('testing'));
|
|
|
+ }
|
|
|
+
|
|
|
+ public function testSetVars()
|
|
|
+ {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+
|
|
|
+ $data = ['test' => 'val', 'foo' => 'bar'];
|
|
|
+ $builder->setVars($data);
|
|
|
+ $this->assertEquals($data, $builder->getVars());
|
|
|
+
|
|
|
+ $update = ['test' => 'updated'];
|
|
|
+ $builder->setVars($update);
|
|
|
+ $this->assertEquals(
|
|
|
+ ['test' => 'val', 'foo' => 'bar', 'test' => 'updated'],
|
|
|
+ $builder->getVars()
|
|
|
+ );
|
|
|
+
|
|
|
+ $update = ['overwrite' => 'yes'];
|
|
|
+ $builder->setVars($update, false);
|
|
|
+ $this->assertEquals(
|
|
|
+ ['overwrite' => 'yes'],
|
|
|
+ $builder->getVars()
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ public function testHasVar()
|
|
|
+ {
|
|
|
+ $builder = new ViewBuilder();
|
|
|
+
|
|
|
+ $this->assertFalse($builder->hasVar('foo'));
|
|
|
+
|
|
|
+ $builder->setVar('foo', 'value');
|
|
|
+ $this->assertTrue($builder->hasVar('foo'));
|
|
|
+
|
|
|
+ $builder->setVar('bar', null);
|
|
|
+ $this->assertTrue($builder->hasVar('bar'));
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* data provider for string properties.
|
|
|
*
|
|
|
@@ -233,9 +277,10 @@ class ViewBuilderTest extends TestCase
|
|
|
->setHelpers(['Form', 'Html'])
|
|
|
->setLayoutPath('Admin/')
|
|
|
->setTheme('TestTheme')
|
|
|
- ->setPlugin('TestPlugin');
|
|
|
+ ->setPlugin('TestPlugin')
|
|
|
+ ->setVars(['foo' => 'bar', 'x' => 'old']);
|
|
|
$view = $builder->build(
|
|
|
- ['one' => 'value'],
|
|
|
+ ['one' => 'value', 'x' => 'new'],
|
|
|
$request,
|
|
|
$response,
|
|
|
$events
|
|
|
@@ -250,7 +295,10 @@ class ViewBuilderTest extends TestCase
|
|
|
$this->assertSame($request, $view->getRequest());
|
|
|
$this->assertInstanceOf(Response::class, $view->getResponse());
|
|
|
$this->assertSame($events, $view->getEventManager());
|
|
|
- $this->assertSame(['one' => 'value'], $view->viewVars);
|
|
|
+ $this->assertEquals(
|
|
|
+ ['one' => 'value', 'foo' => 'bar', 'x' => 'new'],
|
|
|
+ $view->viewVars
|
|
|
+ );
|
|
|
$this->assertInstanceOf('Cake\View\Helper\HtmlHelper', $view->Html);
|
|
|
$this->assertInstanceOf('Cake\View\Helper\FormHelper', $view->Form);
|
|
|
}
|