Carsten Brandt
11 years ago
4 changed files with 91 additions and 1 deletions
@ -0,0 +1,74 @@
|
||||
<?php |
||||
/** |
||||
* |
||||
* |
||||
* @author Carsten Brandt <mail@cebe.cc> |
||||
*/ |
||||
|
||||
namespace yiiunit\extensions\twig; |
||||
|
||||
|
||||
use yii\web\AssetManager; |
||||
use yii\web\JqueryAsset; |
||||
use yii\web\View; |
||||
use Yii; |
||||
use yiiunit\TestCase; |
||||
|
||||
/** |
||||
* @group twig |
||||
*/ |
||||
class ViewRendererTest extends TestCase |
||||
{ |
||||
protected function setUp() |
||||
{ |
||||
$this->mockApplication(); |
||||
} |
||||
|
||||
/** |
||||
* https://github.com/yiisoft/yii2/issues/1755 |
||||
*/ |
||||
public function testLayoutAssets() |
||||
{ |
||||
$view = $this->mockView(); |
||||
JqueryAsset::register($view); |
||||
$content = $view->renderFile('@yiiunit/extensions/twig/views/layout.twig'); |
||||
|
||||
$this->assertEquals(1, preg_match('#<script src="/assets/[0-9a-z]+/jquery\\.js"></script>\s*</body>#', $content), 'content does not contain the jquery js:' . $content); |
||||
} |
||||
|
||||
protected function mockView() |
||||
{ |
||||
return new View([ |
||||
'renderers' => [ |
||||
'twig' => [ |
||||
'class' => 'yii\twig\ViewRenderer', |
||||
//'cachePath' => '@runtime/Twig/cache', |
||||
'options' => [ |
||||
'cache' => false |
||||
], |
||||
'globals' => [ |
||||
'html' => '\yii\helpers\Html', |
||||
'pos_begin' => View::POS_BEGIN |
||||
], |
||||
'functions' => [ |
||||
't' => '\Yii::t', |
||||
'json_encode' => '\yii\helpers\Json::encode' |
||||
] |
||||
], |
||||
], |
||||
'assetManager' => $this->mockAssetManager(), |
||||
]); |
||||
} |
||||
|
||||
protected function mockAssetManager() |
||||
{ |
||||
$assetDir = Yii::getAlias('@runtime/assets'); |
||||
if (!is_dir($assetDir)) { |
||||
mkdir($assetDir, 0777, true); |
||||
} |
||||
return new AssetManager([ |
||||
'basePath' => $assetDir, |
||||
'baseUrl' => '/assets', |
||||
]); |
||||
} |
||||
} |
@ -0,0 +1,14 @@
|
||||
{{ this.beginPage() }} |
||||
<!DOCTYPE html> |
||||
<html lang="en"> |
||||
<head> |
||||
<meta charset="<?php echo Yii::$app->charset; ?>"/> |
||||
<title>{{ html.encode(this.title) }}</title> |
||||
{{ this.head() }} |
||||
</head> |
||||
<body> |
||||
{{ this.beginBody() }} |
||||
body |
||||
{{ this.endBody() }} |
||||
</body> |
||||
{{ this.endPage() }} |
Loading…
Reference in new issue