diff --git a/tests/TestApp/Model/Table/CommentsTable.php b/tests/TestApp/Model/Table/CommentsTable.php index f41cd15b..6f5a2529 100644 --- a/tests/TestApp/Model/Table/CommentsTable.php +++ b/tests/TestApp/Model/Table/CommentsTable.php @@ -14,7 +14,7 @@ public function initialize(array $config): void { $this->addBehavior('Search.Search'); - $this->searchManager() + $this->getBehavior('Search')->searchManager() ->value('Comments.foo') ->like('Comments.search', ['filterEmpty' => true, 'multiValue' => true]) ->value('Comments.baz') diff --git a/tests/TestApp/Model/Table/SectionsTable.php b/tests/TestApp/Model/Table/SectionsTable.php index c94649e9..64133339 100644 --- a/tests/TestApp/Model/Table/SectionsTable.php +++ b/tests/TestApp/Model/Table/SectionsTable.php @@ -14,7 +14,7 @@ public function initialize(array $config): void { $this->addBehavior('Search.Search'); - $this->searchManager() + $this->getBehavior('Search')->searchManager() ->useCollection('frontend') ->value('title') ->useCollection('backend') diff --git a/tests/TestCase/Controller/Component/SearchComponentTest.php b/tests/TestCase/Controller/Component/SearchComponentTest.php index 91382c70..70c27a24 100644 --- a/tests/TestCase/Controller/Component/SearchComponentTest.php +++ b/tests/TestCase/Controller/Component/SearchComponentTest.php @@ -426,6 +426,21 @@ protected function _execute(array $data = []): bool } }; + // CakePHP 5.3+ uses process() instead of _execute() + if (method_exists(SearchForm::class, 'process')) { + $mock = new class extends SearchForm + { + public static $called = false; + + protected function process(array $data = []): bool + { + static::$called = true; + + return true; + } + }; + } + $this->Search->setConfig('formClass', $mock::class); $this->Controller->setRequest($request); diff --git a/tests/TestCase/Model/Behavior/SearchBehaviorTest.php b/tests/TestCase/Model/Behavior/SearchBehaviorTest.php index 498d43f6..5efe8c78 100644 --- a/tests/TestCase/Model/Behavior/SearchBehaviorTest.php +++ b/tests/TestCase/Model/Behavior/SearchBehaviorTest.php @@ -182,7 +182,7 @@ public function testFinder() 'search' => 'b', 'group' => 'main', ]; - $this->assertFalse($this->Articles->isSearch()); + $this->assertFalse($this->Articles->getBehavior('Search')->isSearch()); $query = $this->Articles->find('search', search: $queryString); $this->assertEquals(3, $query->clause('where')->count()); @@ -204,7 +204,7 @@ public function testFinder() ], ); $this->assertEquals(2, $query->clause('where')->count()); - $this->assertTrue($this->Articles->isSearch()); + $this->assertTrue($this->Articles->getBehavior('Search')->isSearch()); } /** @@ -227,7 +227,7 @@ public function testEmptyValues() $this->Articles->addBehavior('Search.Search', [ 'emptyValues' => ['a'], ]); - $this->Articles->searchManager() + $this->Articles->getBehavior('Search')->searchManager() ->value('foo') ->like('search') ->value('baz') @@ -239,7 +239,7 @@ public function testEmptyValues() $this->Articles->addBehavior('Search.Search', [ 'emptyValues' => ['a', '0'], ]); - $this->Articles->searchManager() + $this->Articles->getBehavior('Search')->searchManager() ->value('foo') ->like('search') ->value('baz') @@ -315,14 +315,14 @@ public static function collectionFinderProvider() */ public function testSearchManager() { - $manager = $this->Articles->searchManager(); + $manager = $this->Articles->getBehavior('Search')->searchManager(); $this->assertInstanceOf('\Search\Manager', $manager); } public function testExtraParams(): void { $result = []; - $manager = $this->Articles->searchManager(); + $manager = $this->Articles->getBehavior('Search')->searchManager(); $manager->callback('field1', [ 'callback' => function (SelectQuery $query, array $args) use (&$result) { $result = $args;