Beispiel #1
0
 /**
  * @covers ::run
  */
 public function testScriptGeneration()
 {
     $widget = $this->makeWidget();
     $widget->id = 'foo';
     $widget->alerts = ['foo' => 'bar'];
     $widget->events = ['click' => 'return foobar()'];
     TestHelper::runAndCapture($widget);
     $cs = \Yii::app()->clientScript;
     $script = $cs->scripts[$cs->defaultScriptPosition][get_class($widget) . '#' . $widget->getId()];
     $this->assertEquals("jQuery('#foo .alert').on('click','return foobar()');", $script);
 }
 /**
  * @cover ::registerClientScript
  */
 public function testRegisterClientScript()
 {
     /** @var CClientScript $cs */
     $cs = Yii::app()->clientScript;
     $cs->reset();
     $widget = $this->makeWidget();
     $widget->cssFile = false;
     TestHelper::runAndCapture($widget);
     $this->assertEmpty(TestHelper::getPropValue($cs, 'cssFiles'));
     $widget = $this->makeWidget();
     $widget->cssFile = 'blargh';
     TestHelper::runAndCapture($widget);
     $this->assertTrue($cs->isCssFileRegistered('blargh'));
 }
 /**
  * @covers ::run
  */
 public function testRunLinksRendering()
 {
     // no output produced on empty links
     $widget = $this->makeWidget();
     $content = TestHelper::runAndCapture($widget);
     $this->assertEmpty($content);
     // separator between links
     $widget = $this->makeWidget();
     $widget->homeLink = 'foobar';
     $widget->links = ['foo' => 'bar', 'end'];
     $widgetContent = TestHelper::runAndCapture($widget);
     $actualHtml = new DOMDocument();
     $actualHtml->loadHTML($widgetContent);
     $expectedHtml = new DOMDocument();
     $expectedHtml->loadHTML('<ul class="breadcrumb"><li class="active">foobar<span class="divider">/</span></li><li><a href="bar">foo</a><span class="divider">/</span></li><li class="active">end</li></ul>');
     $this->assertEquals($expectedHtml, $actualHtml);
 }