/** * test overwrite variable with data object chain */ public function testVariableScope3() { $data1 = new Helpers\Data($this->smarty); $data1->assign('foo', 'newvalue'); $data2 = new Helpers\Data($data1); $tpl = $this->smarty->createTemplate("eval:{\$foo}", null, null, $data2); // must see the new value $this->assertEquals("newvalue", $this->smarty->fetch($tpl)); }
/** * test get single variables with data object chain search parents disabled */ public function testGetSingleTemplateVarsScopeAllNoParents() { error_reporting(error_reporting() & ~(E_NOTICE | E_USER_NOTICE)); $data1 = new Helpers\Data($this->smarty); $data2 = new Helpers\Data($data1); $this->smarty->assign('foo', 'bar'); $data1->assign('blar', 'buh'); $data2->assign('foo2', 'bar2'); $this->assertEquals("", $this->smarty->getTemplateVars('foo', $data2, false)); $this->assertEquals("bar2", $this->smarty->getTemplateVars('foo2', $data2, false)); $this->assertEquals("", $this->smarty->getTemplateVars('blar', $data2, false)); }