Esempio n. 1
0
 /**
  * Testing Web->enqueueScript($script)
  */
 public function testEnqueueAndOutputScript()
 {
     self::$web->enqueueScript(array("name" => "modernizr.js", "uri" => "/system/templates/js/modernizr.js", "weight" => 10));
     // Test one script
     $this->assertEquals(count(self::$web->_scripts), 1);
     $this->assertEquals($this->captureOutput(self::$web, 'outputScripts'), "<script src='/system/templates/js/modernizr.js'></script>");
     // Test a second script
     self::$web->enqueueScript(array("name" => "jquery.js", "uri" => "/system/templates/js/jquery.js", "weight" => 50));
     $this->assertEquals(count(self::$web->_scripts), 2);
     $this->assertEquals($this->captureOutput(self::$web, 'outputScripts'), "<script src='/system/templates/js/jquery.js'></script><script src='/system/templates/js/modernizr.js'></script>");
     // Test that adding a previous value isnt duplicated
     self::$web->enqueueScript(array("name" => "jquery.js", "uri" => "/system/templates/js/jquery.js", "weight" => 50));
     $this->assertEquals(count(self::$web->_scripts), 2);
     $this->assertEquals($this->captureOutput(self::$web, 'outputScripts'), "<script src='/system/templates/js/jquery.js'></script><script src='/system/templates/js/modernizr.js'></script>");
     // Test weight based sorting by injecting another script which should sort to the middle
     self::$web->enqueueScript(array("name" => "myscript.js", "uri" => "/eek/myscript.js", "weight" => 20));
     $this->assertEquals(count(self::$web->_scripts), 3);
     $this->assertEquals($this->captureOutput(self::$web, 'outputScripts'), "<script src='/system/templates/js/jquery.js'></script><script src='/eek/myscript.js'></script><script src='/system/templates/js/modernizr.js'></script>");
 }