Laravel で Codeception を使用して、読み取り可能なエラー メッセージを取得しようとしています。App::error 関数をオーバーライドして、テキストまたは json ベースの応答を返す方法を見つけました。ただし、テストから呼び出していないときにhtmlエラーページのみを表示するように、何らかの方法でエラーを設定したいと思います。
私が実行している機能テストは PhpBrowser クラスを使用しているため、チェックできない可能性があることに気付きました...
どんなヒントでも大歓迎です。
以下のコード:
App::error(function(Exception $exception, $code, $fromConsole)
{
Log::error($exception);
if($fromConsole) {
return Response::make($exception->getMessage());
}
if ( Request::header('accept') === 'application/json' )
{
return Response::json([
'error' => true,
'message' => $exception->getMessage(),
'code' => $code],
$code
);
}
});