Exemple #1
0
 public function testShouldAllowProgrammaticDijitCreation()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getElement();
     $this->assertNotRegexp('/<button[^>]*(dojoType="dijit.form.Button")/', $html);
     $this->assertNotNull($this->view->plugin('dojo')->getDijit('elementId'));
 }
 public function testShouldAllowProgrammaticDijitCreation()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getContainer();
     $this->assertNotRegexp('/<div[^>]*(dojoType="dijit.layout.AccordionContainer")/', $html);
     $this->assertNotNull($this->view->broker('dojo')->getDijit('container'));
 }
Exemple #3
0
 public function testShouldAllowProgrammaticDijitCreation()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getElement();
     $this->assertNotRegexp('/<input[^>]*(dojoType="dijit.form.DateTextBox")/', $html);
     $this->assertNotNull($this->view->broker('dojo')->getDijit('elementId'));
 }
 public function testShouldAllowProgrammaticDijitCreation()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getElement();
     $this->assertNotRegexp('/<div[^>]*(dojoType="dijit.form.HorizontalSlider")/', $html);
     $this->assertNotNull($this->view->broker('dojo')->getDijit('elementId-slider'));
 }
 public function testShouldAllowProgrammaticDijitCreation()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getElement();
     $this->assertNotRegexp('/<textarea[^>]*(dojoType="dijit.form.Textarea")/', $html);
     $this->assertNotNull($this->view->dojo()->getDijit('elementId'));
 }
Exemple #6
0
 public function testOnlyIdShouldBeNecessary()
 {
     DojoHelper::setUseDeclarative();
     $html = $this->view->form('foo');
     $this->assertRegexp('/<form[^>]*(dojoType="dijit.form.Form")/', $html, $html);
     $this->assertRegexp('/<form[^>]*(id="foo")/', $html, $html);
 }
Exemple #7
0
 /**
  * Sets up the fixture, for example, open a network connection.
  * This method is called before a test is executed.
  *
  * @return void
  */
 public function setUp()
 {
     Registry::_unsetInstance();
     DojoHelper::setUseDeclarative();
     $this->view = $this->getView();
     $this->element = $this->getElement();
     $this->element->setView($this->view);
 }
Exemple #8
0
 /**
  * Sets up the fixture, for example, open a network connection.
  * This method is called before a test is executed.
  *
  * @return void
  */
 public function setUp()
 {
     Registry::_unsetInstance();
     DojoHelper::setUseDeclarative();
     $this->view = $this->getView();
     $this->helper = new EditorHelper();
     $this->helper->setView($this->view);
 }
 /**
  * @group ZF-3877
  */
 public function testContentPaneMarkupShouldNotContainNameAttribute()
 {
     $html = $this->view->plugin('contentPane')->__invoke('pane1', 'This is the pane content', array('id' => 'pane', 'title' => 'Pane 1'));
     $this->assertNotContains('name="/', $html, $html);
     DojoHelper::setUseProgrammatic();
     $html = $this->view->plugin('contentPane')->__invoke('pane1', 'This is the pane content', array('id' => 'pane', 'title' => 'Pane 1'));
     $this->assertNotContains('name="/', $html, $html);
 }
Exemple #10
0
 /**
  * Sets up the fixture, for example, open a network connection.
  * This method is called before a test is executed.
  *
  * @return void
  */
 public function setUp()
 {
     Registry::_unsetInstance();
     DojoHelper::setUseDeclarative();
     $this->view = $this->getView();
     $this->decorator = new TabContainerDecorator();
     $this->element = $this->getElement();
     $this->element->setView($this->view);
     $this->decorator->setElement($this->element);
 }
Exemple #11
0
 /**
  * Sets up the fixture, for example, open a network connection.
  * This method is called before a test is executed.
  *
  * @return void
  */
 public function setUp()
 {
     Registry::_unsetInstance();
     DojoHelper::setUseDeclarative();
     $this->errors = array();
     $this->view = $this->getView();
     $this->decorator = new DijitElementDecorator();
     $this->element = $this->getElement();
     $this->element->setView($this->view);
     $this->decorator->setElement($this->element);
 }
Exemple #12
0
 /**
  * @group ZF-3962
  */
 public function testHelperShouldAllowDisablingParseOnLoadWithDeclarativeStyle()
 {
     DojoHelper::setUseDeclarative();
     $this->helper->requireModule('dijit.layout.ContentPane')
                  ->setDjConfigOption('parseOnLoad', 'false')
                  ->enable();
     $html = $this->helper->__toString();
     if (!preg_match('/(var djConfig = .*?(?:};))/s', $html, $matches)) {
         $this->fail('Failed to find djConfig settings: ' . $html);
     }
     $this->assertNotContains('"parseOnLoad":true', $matches[1]);
 }
 /**
  * @group ZF-7134
  * @group ZF-7266
  */
 public function testComboBoxInSubFormShouldCreateJsonStoreBasedOnQualifiedId()
 {
     DojoHelper::setUseProgrammatic();
     $this->element->setStoreId('foo')->setStoreType('dojo.data.ItemFileReadStore')->setStoreParams(array('url' => '/foo'));
     $subform = new SubForm(array('name' => 'bar'));
     $subform->addElement($this->element);
     $html = $this->element->render();
     $dojo = $this->view->dojo()->__toString();
     $this->assertContains('"store":"foo"', $dojo, $dojo);
 }
Exemple #14
0
 /**
  * @group ZF-5987
  * @group ZF-7266
  */
 public function testStoreCreationWhenUsingProgrammaticCreationShouldRegisterAsDojoJavascript()
 {
     DojoHelper::setUseProgrammatic(true);
     $html = $this->getElementAsRemoter();
     $js = $this->view->plugin('dojo')->getJavascript();
     $this->assertContains('var stateStore;', $js);
     $onLoad = $this->view->plugin('dojo')->_getZendLoadActions();
     $storeDeclarationFound = false;
     foreach ($onLoad as $statement) {
         if (strstr($statement, 'stateStore = new ')) {
             $storeDeclarationFound = true;
             break;
         }
     }
     $this->assertTrue($storeDeclarationFound, 'Store definition not found');
 }
 public function testShouldAllowProgrammaticDijitCreationAsRemoter()
 {
     DojoHelper::setUseProgrammatic();
     $html = $this->getElementAsRemoter();
     $this->assertNotRegexp('/<input[^>]*(dojoType="dijit.form.FilteringSelect")/', $html);
     $this->assertRegexp('/<input[^>]*(type="text")/', $html);
     $this->assertNotNull($this->view->plugin('dojo')->getDijit('elementId'));
     $this->assertContains('var stateStore;', $this->view->plugin('dojo')->getJavascript());
     $found = false;
     $scripts = $this->view->plugin('dojo')->_getZendLoadActions();
     foreach ($scripts as $js) {
         if (strstr($js, 'stateStore = new ')) {
             $found = true;
             break;
         }
     }
     $this->assertTrue($found, 'No store declaration found: ' . var_export($scripts, 1));
 }
Exemple #16
0
 /**
  * String representation of dojo environment
  *
  * @return string
  */
 public function __toString()
 {
     if (!$this->isEnabled()) {
         return '';
     }
     $this->_isXhtml = $this->view->plugin('doctype')->isXhtml();
     if (DojoHelper::useDeclarative()) {
         if (null === $this->getDjConfigOption('parseOnLoad')) {
             $this->setDjConfigOption('parseOnLoad', true);
         }
     }
     if (!empty($this->_dijits)) {
         $this->registerDijitLoader();
     }
     $html = $this->_renderStylesheets() . PHP_EOL . $this->_renderDjConfig() . PHP_EOL . $this->_renderDojoScriptTag() . PHP_EOL . $this->_renderLayers() . PHP_EOL . $this->_renderExtras();
     return $html;
 }
Exemple #17
0
 public function testHelperInProgrammaticModeShouldGenerateDivWithoutPassedDojoType()
 {
     DojoHelper::setUseProgrammatic();
     $content = $this->view->plugin('customDijit')->__invoke('foo', 'content', array('dojoType' => 'custom.Dijit'));
     $this->assertNotContains('dojoType="custom.Dijit"', $content);
 }
Exemple #18
0
 /**
  * Whether or not to use programmatic dijit creation w/o script creation
  *
  * @return bool
  */
 protected function _useProgrammaticNoScript()
 {
     return Dojo::useProgrammaticNoScript();
 }