Source of file SearchReindexTest.php
Size: 1,865 Bytes - Last Modified: 2021-12-23T10:34:25+00:00
/var/www/docs.ssmods.com/process/src/tests/Tasks/SearchReindexTest.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | <?php namespace SilverStripe\SearchService\Tests\Tasks; use SilverStripe\Control\HTTPRequest; use SilverStripe\Core\Config\Config; use SilverStripe\Core\Injector\Injector; use SilverStripe\Dev\SapphireTest; use SilverStripe\SearchService\Jobs\ClearIndexJob; use SilverStripe\SearchService\Jobs\ReindexJob; use SilverStripe\SearchService\Service\IndexConfiguration; use SilverStripe\SearchService\Service\SyncJobRunner; use SilverStripe\SearchService\Tasks\SearchClearIndex; use SilverStripe\SearchService\Tasks\SearchReindex; use SilverStripe\SearchService\Tests\SearchServiceTest; class SearchReindexTest extends SearchServiceTest { public function testTask() { $config = $this->mockConfig(); $config->set('use_sync_jobs', true); $mock = $this->getMockBuilder(SyncJobRunner::class) ->setMethods(['runJob']) ->getMock(); $mock->expects($this->once()) ->method('runJob') ->with($this->callback(function (ReindexJob $job) { return count($job->onlyClasses) === 1 && $job->onlyClasses[0] === 'foo'; })); $task = SearchReindex::create(); $request = new HTTPRequest('GET', '/', ['onlyClass' => 'foo']); Injector::inst()->registerService($mock, SyncJobRunner::class); $task->run($request); $mock = $this->getMockBuilder(SyncJobRunner::class) ->setMethods(['runJob']) ->getMock(); $mock->expects($this->once()) ->method('runJob') ->with($this->callback(function (ReindexJob $job) { return empty($job->onlyClasses); })); $task = SearchReindex::create(); $request = new HTTPRequest('GET', '/', []); Injector::inst()->registerService($mock, SyncJobRunner::class); $task->run($request); } } |