public function indexAction() { $query = $this->params()->fromQuery('query', null); $results = $this->moduleMapper->findByLike($query); $viewModel = new ViewModel(['results' => $results]); $viewModel->setTerminal(true); return $viewModel; }
public function testFindByLikeMatchesEntitiesWhereAllWordsExist() { $value = 'foo bar baz qux'; $query = 'foo baz'; $module = $this->module(); $module->setDescription($value); $this->mapper->insert($module); $moduleFoo = $this->module(); $moduleFoo->setDescription('foo'); $this->mapper->insert($moduleFoo); $moduleBaz = $this->module(); $moduleBaz->setDescription('baz'); $this->mapper->insert($moduleBaz); /* @var Db\ResultSet\HydratingResultSet $resultSet */ $resultSet = $this->mapper->findByLike($query); $this->assertCount(1, $resultSet); /* @var Entity\Module $result */ $result = $resultSet->current(); $this->assertInstanceOf(Entity\Module::class, $result); $this->assertSame($result->getDescription(), $module->getDescription()); }