/**
  * @test
  */
 public function removeReallyRemovesVariables()
 {
     $this->variableProvider->add('variable', 'string1');
     $this->variableProvider->remove('variable');
     $result = $this->variableProvider->get('variable');
     $this->assertNull($result);
 }
 /**
  * @param string $identifier
  * @return mixed
  */
 public function get($identifier)
 {
     $subject = parent::get($identifier);
     if ($subject instanceof TemplateObjectAccessInterface) {
         $subject = $subject->objectAccess();
     }
     return $subject;
 }
 /**
  * @param string $identifier
  * @return mixed
  */
 public function get($identifier)
 {
     if ($identifier === 'random') {
         return 'random' . sha1(rand(0, 999999999999.0));
     } elseif ($identifier === 'incrementer') {
         return ++$this->incrementer;
     } else {
         return parent::get($identifier);
     }
 }