Fixup ApiTests about Content-Type

This commit is contained in:
Benoît Burnichon
2015-05-11 18:11:51 +02:00
parent 4d4f631672
commit 72fdfa7141
4 changed files with 15 additions and 9 deletions

View File

@@ -112,7 +112,7 @@ class Result
*
* @return Result
*
* @throws InvalidArgumentException
* @throws \InvalidArgumentException
*/
public static function createError(Request $request, $code, $message)
{
@@ -139,6 +139,10 @@ class Result
$errorType = self::ERROR_METHODNOTALLOWED;
$errorMessage = 'Attempting to use POST with a GET-only endpoint, or vice-versa';
break;
case 406:
$errorType = self::ERROR_UNACCEPTABLE;
$errorMessage = 'Request content type is not acceptable';
break;
case 500:
$errorType = self::ERROR_INTERNALSERVERERROR;
$errorMessage = 'Internal Server Error';

View File

@@ -9,11 +9,9 @@
*/
namespace Alchemy\Phrasea\Controller\Prod;
use Alchemy\Phrasea\Application;
use Alchemy\Phrasea\Controller\Controller;
use Alchemy\Phrasea\Helper\Record as RecordHelper;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\HttpException;
class BridgeController extends Controller

View File

@@ -55,10 +55,8 @@ class ApiExceptionHandlerSubscriber implements EventSubscriberInterface
} elseif ($e instanceof NotFoundHttpException) {
$code = 404;
} elseif ($e instanceof HttpExceptionInterface) {
if (503 === $e->getStatusCode()) {
$code = Result::ERROR_MAINTENANCE;
} else if (406 === $e->getStatusCode()) {
$code = Result::ERROR_UNACCEPTABLE;
if (in_array($e->getStatusCode(), [503, 406])) {
$code = $e->getStatusCode();
} else {
$code = 500;
}