@@ -208,6 +208,44 @@ public function testWillRenderContentInLayoutPassedToConstructor()
208208 $ this ->assertContains ('<title>Layout Page</title> ' , $ result , sprintf ('Received %s ' , $ result ));
209209 }
210210
211+ public function testSharedParameterIsAvailableInLayout ()
212+ {
213+ $ renderer = new ZendViewRenderer (null , 'zendview-layout-variable ' );
214+ $ renderer ->addPath (__DIR__ . '/TestAsset ' );
215+ $ title = uniqid ('ZendViewTitle ' , true );
216+ $ renderer ->addDefaultParam ($ renderer ::TEMPLATE_ALL , 'title ' , $ title );
217+
218+ $ name = uniqid ('ZendViewName ' , true );
219+ $ result = $ renderer ->render ('zendview ' , ['name ' => $ name ]);
220+
221+ $ this ->assertContains ($ title , $ result );
222+ $ this ->assertContains ($ name , $ result );
223+ $ content = file_get_contents (__DIR__ . '/TestAsset/zendview.phtml ' );
224+ $ content = str_replace ('<?php echo $name ?> ' , $ name , $ content );
225+ $ this ->assertContains ($ content , $ result );
226+ $ expected = sprintf ('<title>Layout Page: %s</title> ' , $ title );
227+ $ this ->assertContains ($ expected , $ result , sprintf ('Received %s ' , $ result ));
228+ }
229+
230+ public function testTemplateDefaultParameterIsNotAvailableInLayout ()
231+ {
232+ $ renderer = new ZendViewRenderer (null , 'zendview-layout-variable ' );
233+ $ renderer ->addPath (__DIR__ . '/TestAsset ' );
234+ $ title = uniqid ('ZendViewTitle ' , true );
235+ $ renderer ->addDefaultParam ('zendview ' , 'title ' , $ title );
236+
237+ $ name = uniqid ('ZendViewName ' , true );
238+ $ result = $ renderer ->render ('zendview ' , ['name ' => $ name ]);
239+
240+ $ this ->assertNotContains ($ title , $ result );
241+ $ this ->assertContains ($ name , $ result );
242+ $ content = file_get_contents (__DIR__ . '/TestAsset/zendview.phtml ' );
243+ $ content = str_replace ('<?php echo $name ?> ' , $ name , $ content );
244+ $ this ->assertContains ($ content , $ result );
245+ $ expected = sprintf ('<title>Layout Page: %s</title> ' , '' );
246+ $ this ->assertContains ($ expected , $ result , sprintf ('Received %s ' , $ result ));
247+ }
248+
211249 /**
212250 * @group layout
213251 */
0 commit comments