Laravel 團隊釋出 9.14 版本,這個版本的更新包含了 migration table comment、dynamic trashed factory state、一個新的 array key helper 和 bootable/setup test trait 以及其他項目:
用於 MySQL 和 Postgres 的 Migration table comments
Andrew Broberg 貢獻了這個更新,允許可以在 migration 中加入 comments 欄位
Schema::table('posts', function (Blueprint $table) {
$table->comment('This is a comment');
});
動態的 “trashed” 工廠狀態
Jason McCreary 貢獻了這個更新,允許在 factory 有 soft deletes 的狀態
// in Factory class
public function trashed()
{
return $this->state([
'deleted_at' => now()->subDay(),
]);
}
Array prependKeysWith helper 讓你可以將陣列裡的 key 加上 prefix
Arr::prependKeysWith(['key' => 'value'], 'prefix.');
// ['prefix.key' => 'value']
在測試中的 Bootable traits
trait RefreshSomeService
{
public function setUpRefreshSomeService()
{
SomeService::refresh();
}
}
class SomeServiceTest extends TestCase
{
use RefreshDatabase;
use RefreshSomeService;
}
只要在 TestCase 中使用 setUp 開頭的方法,就能自己定義一系列的測試初始設定。