|
|
@ -7,8 +7,10 @@ |
|
|
|
|
|
|
|
|
|
|
|
namespace yiiunit\framework\base; |
|
|
|
namespace yiiunit\framework\base; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
use Yii; |
|
|
|
use yii\base\Widget; |
|
|
|
use yii\base\Widget; |
|
|
|
use yii\base\WidgetEvent; |
|
|
|
use yii\base\WidgetEvent; |
|
|
|
|
|
|
|
use yii\di\Container; |
|
|
|
use yiiunit\TestCase; |
|
|
|
use yiiunit\TestCase; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
@ -47,6 +49,30 @@ class WidgetTest extends TestCase |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
|
|
|
|
* @see https://github.com/yiisoft/yii2/issues/19030 |
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
public function testDependencyInjection() |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Yii::$container = new Container(); |
|
|
|
|
|
|
|
Yii::$container->setDefinitions([ |
|
|
|
|
|
|
|
TestWidgetB::className() => [ |
|
|
|
|
|
|
|
'class' => TestWidget::className() |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
]); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ob_start(); |
|
|
|
|
|
|
|
ob_implicit_flush(false); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$widget = TestWidgetB::begin(['id' => 'test']); |
|
|
|
|
|
|
|
$this->assertTrue($widget instanceof TestWidget); |
|
|
|
|
|
|
|
TestWidgetB::end(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$output = ob_get_clean(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$this->assertSame('<run-test>', $output); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* @depends testBeginEnd |
|
|
|
* @depends testBeginEnd |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public function testStackTracking() |
|
|
|
public function testStackTracking() |
|
|
|