/**
  * 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));
 }