From a012a42008b9a6490829fce89ea5de9a621a975e Mon Sep 17 00:00:00 2001 From: Steven Nguyen Date: Fri, 11 Aug 2023 17:41:48 -0700 Subject: [PATCH] Create 1.4 request filters --- app/controllers/general.php | 4 ++ src/Appwrite/Utopia/Request/Filters/V16.php | 49 ++++++++++++++++++ tests/unit/Utopia/Request/Filters/V16Test.php | 51 +++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 src/Appwrite/Utopia/Request/Filters/V16.php create mode 100644 tests/unit/Utopia/Request/Filters/V16Test.php diff --git a/app/controllers/general.php b/app/controllers/general.php index 59821296d8..bf3030617c 100644 --- a/app/controllers/general.php +++ b/app/controllers/general.php @@ -36,6 +36,7 @@ use Appwrite\Utopia\Request\Filters\V12 as RequestV12; use Appwrite\Utopia\Request\Filters\V13 as RequestV13; use Appwrite\Utopia\Request\Filters\V14 as RequestV14; use Appwrite\Utopia\Request\Filters\V15 as RequestV15; +use Appwrite\Utopia\Request\Filters\V16 as RequestV16; use Utopia\Validator\Text; use Utopia\Validator\WhiteList; @@ -222,6 +223,9 @@ App::init() case version_compare($requestFormat, '0.15.3', '<'): Request::setFilter(new RequestV15()); break; + case version_compare($requestFormat, '1.4.0', '<'): + Request::setFilter(new RequestV16()); + break; default: Request::setFilter(null); } diff --git a/src/Appwrite/Utopia/Request/Filters/V16.php b/src/Appwrite/Utopia/Request/Filters/V16.php new file mode 100644 index 0000000000..f8c97681b2 --- /dev/null +++ b/src/Appwrite/Utopia/Request/Filters/V16.php @@ -0,0 +1,49 @@ +filter = new V16(); + } + + public function tearDown(): void + { + } + + public function createExecutionProvider(): array + { + return [ + 'data' => [ + [ + 'data' => 'Lorem ipsum' + ], + [ + 'body' => 'Lorem ipsum' + ], + ], + ]; + } + + /** + * @dataProvider createExecutionProvider + */ + public function testCreateExecution(array $content, array $expected): void + { + $model = 'functions.createExecution'; + + $result = $this->filter->parse($content, $model); + + $this->assertEquals($expected, $result); + } +}