From f8fb98d377663aad2333f115de7b894c2763a9a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Thu, 8 Aug 2024 08:42:38 +0000 Subject: [PATCH] Update response filter --- src/Appwrite/Utopia/Response/Filters/V18.php | 4 ++ .../unit/Utopia/Response/Filters/V18Test.php | 40 +++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/src/Appwrite/Utopia/Response/Filters/V18.php b/src/Appwrite/Utopia/Response/Filters/V18.php index d0aa680e3b..62a19e3985 100644 --- a/src/Appwrite/Utopia/Response/Filters/V18.php +++ b/src/Appwrite/Utopia/Response/Filters/V18.php @@ -24,6 +24,10 @@ class V18 extends Filter protected function parseExecution(array $content) { + if($content['status'] === 'completed' && $content['statusCode'] >= 400 && $content['statusCode'] < 500) { + $content['status'] === 'failed'; + } + unset($content['scheduledAt']); return $content; } diff --git a/tests/unit/Utopia/Response/Filters/V18Test.php b/tests/unit/Utopia/Response/Filters/V18Test.php index c4011c08a1..2110e518a9 100644 --- a/tests/unit/Utopia/Response/Filters/V18Test.php +++ b/tests/unit/Utopia/Response/Filters/V18Test.php @@ -34,6 +34,46 @@ class V18Test extends TestCase ], [ ] + ], + 'update 404 status' => [ + [ + 'statusCode' => '404', + 'status' => 'completed' + ], + [ + 'statusCode' => '404', + 'status' => 'failed' + ] + ], + 'update 400 status' => [ + [ + 'statusCode' => '400', + 'status' => 'completed' + ], + [ + 'statusCode' => '400', + 'status' => 'failed' + ] + ], + 'dont update 200 status' => [ + [ + 'statusCode' => '200', + 'status' => 'completed' + ], + [ + 'statusCode' => '200', + 'status' => 'completed' + ] + ], + 'dont update 500 status' => [ + [ + 'statusCode' => '500', + 'status' => 'failed' + ], + [ + 'statusCode' => '500', + 'status' => 'failed' + ] ] ]; }