Ejemplo n.º 1
0
 /**
  * Safe method for children to overrride w/o affecting the cache.
  *
  * @return string
  */
 protected function _renderBlock()
 {
     if (!$this->_block) {
         return null;
     }
     if (($html = $this->_block->toHtml()) == '') {
         // saves at least a space to prevent additional generation for the same cache key
         $html = ' ';
     }
     return $html;
 }
Ejemplo n.º 2
0
 /**
  * @test
  * @dataProvider blocksProvider
  */
 public function coreTextBlock(Mage_Core_Block_Abstract $block, array $regex, array $notRegex)
 {
     $this->assertEventObserverDefined('global', 'core_block_abstract_to_html_after', 'Aoe_TemplateHints_Model_Observer', 'core_block_abstract_to_html_after');
     $observer = Mage::getModel('aoe_templatehints/observer');
     /* @var $observer Aoe_TemplateHints_Model_Observer */
     $rendererFromObserver = $observer->getRenderer();
     $this->assertInstanceOf('Aoe_TemplateHints_Model_Renderer_Abstract', $rendererFromObserver);
     $this->assertInstanceOf('Aoe_TemplateHints_Model_Renderer_Opentip', $rendererFromObserver);
     $html = $block->toHtml();
     $this->assertEventDispatchedExactly('core_block_abstract_to_html_before', 1);
     $this->assertEventDispatchedExactly('core_block_abstract_to_html_after', 1);
     $this->assertContains('id="tpl-hint-', $html);
     $this->assertContains('class="tpl-hint tpl-hint-border', $html);
     $this->assertRegExp('/<div id="tpl-hint-\\d*-title"/', $html);
     $this->assertRegExp('/<div id="tpl-hint-\\d*-infobox"/', $html);
     $this->assertContains('<dt>Class:</dt><dd>' . get_class($block) . '</dd>', $html);
     foreach ($regex as $c) {
         $this->assertRegExp($c, $html);
     }
     Mage::app()->disableEvents();
     $rawBlockHtml = $block->toHtml();
     Mage::app()->enableEvents();
     $this->assertContains($rawBlockHtml, $html);
 }