Laravel 5.0 で単体テストを作成しており、リクエスト クラスで別のバッグを使用して検証エラー メッセージを表示しています。
私は自分のファイルでこれを使用しています:
/* ExampleRequest.php */
namespace App\Http\Requests;
use App\Http\Requests\Request;
use Illuminate\Support\Facades\Auth;
class ExampleRequest extends Request {
protected $errorBag = 'otherbag';
public function rules(){
return [
'my_field' => 'required'
];
}
}
私のテストファイルでは、これを使用してテストしています:
/* ExampleTest.php */
class ExampleTest extends TestCase {
public function testPostWithoutData(){
$response = $this->call('POST', 'url/to/post',[
'my_field' => ''
]);
$this->assertSessionHasErrors('my_field');
}
}
テストを実行すると、正しいアサートを取得できず、次の問題が返されます。
セッション欠落エラー:の
my_field
アサートに失敗しfalse
ましたtrue
。
$errorBag
リクエストファイルから属性を取り出せば問題ありません。
必要に応じて詳細をお知らせします。