在我的 laravel 包测试中找不到视图
View not found on my laravel package tests
我正在尝试为我的 Laravel package 添加 blade 指令。
一切正常,但在测试阶段,出现此错误:
1) MahbodHastam\UserWallet\Tests\Feature\BladeTest::show_user_wallet_balance
InvalidArgumentException: View [userWalletBalance] not found.
我应该把$this->loadViewsFrom(...)
放在服务商里面吗?
查看路径:/tests/resources/views/userWalletBalance.blade.php
测试路径:/tests/Feature/BladeTest.php
我也尝试将 resources
目录移动到 Feature
目录(在 BladeTest.php
旁边)但得到了同样的错误。
这是我在 BladeTest.php
上的代码:
public function show_user_wallet_balance() {
$wallet = UserWallet::getWallet(wallet_id: 1);
$this->assertEquals('1000', $this->renderView('userWalletBalance', ['wallet' => $wallet]));
}
protected function renderView($view, $with) {
Artisan::call('view:clear');
return trim((string) view($view)->with($with));
}
我修好了:D
我没有从文件加载视图,而是使用 InteractsWithViews
特性(位于 Illuminate\Foundation\Testing\Concerns
命名空间)来呈现 blade,如下面的代码所示:
$renderedView = (string) $this->blade("@userWalletBalance($wallet)");
$this->assertEquals('1000', trim($renderedView));
我正在尝试为我的 Laravel package 添加 blade 指令。
一切正常,但在测试阶段,出现此错误:
1) MahbodHastam\UserWallet\Tests\Feature\BladeTest::show_user_wallet_balance
InvalidArgumentException: View [userWalletBalance] not found.
我应该把$this->loadViewsFrom(...)
放在服务商里面吗?
查看路径:/tests/resources/views/userWalletBalance.blade.php
测试路径:/tests/Feature/BladeTest.php
我也尝试将 resources
目录移动到 Feature
目录(在 BladeTest.php
旁边)但得到了同样的错误。
这是我在 BladeTest.php
上的代码:
public function show_user_wallet_balance() {
$wallet = UserWallet::getWallet(wallet_id: 1);
$this->assertEquals('1000', $this->renderView('userWalletBalance', ['wallet' => $wallet]));
}
protected function renderView($view, $with) {
Artisan::call('view:clear');
return trim((string) view($view)->with($with));
}
我修好了:D
我没有从文件加载视图,而是使用 InteractsWithViews
特性(位于 Illuminate\Foundation\Testing\Concerns
命名空间)来呈现 blade,如下面的代码所示:
$renderedView = (string) $this->blade("@userWalletBalance($wallet)");
$this->assertEquals('1000', trim($renderedView));