public function testHosts() { $engineDev = new MerlinSearch('blackbird', 'dev', 'unittest'); $this->assertEquals($engineDev->getHost(), 'search-dev.search.blackbird.am'); $engineStage = new MerlinSearch('blackbird', 'stage', 'unittest'); $this->assertEquals($engineStage->getHost(), 'search-staging.search.blackbird.am'); $engineProd = new MerlinSearch('blackbird', 'prod', 'unittest'); $this->assertEquals($engineProd->getHost(), 'search-prod.search.blackbird.am'); }
<?php namespace Merlin; require_once '../Merlin/Merlin.php'; //creates an instance of the Merlin search engine $engine = new MerlinSearch('blackbird', 'dev', 'guest_dev'); // does a simple search for a dress $r = $engine->search(new Search('dress')); printResults($r); //A query where we want 50 results starting from the 100th result $r = $engine->search((new Search('dress'))->setStart(100)->setNum(50)); printResults($r); //A query where we only want back the "id" and "title" fields $r = $engine->search((new Search('red dress'))->addField('id')->addField('title')); printResults($r); //Get all fields including debug fields $r = $engine->search((new Search('red dress'))->addField('[debug]')); printResults($r); //Filter by price < 100 $r = $engine->search((new Search('red dress'))->addFilter(new Filter('price', '<', 100))); printResults($r); //A query where we want red dresses in size '2P' or in size '4R' and $s = new Search('red dress'); $s->addFilter((new Filter('sizes', '=', '2P', '2p2r'))->addOr('sizes', '=', '4R')); $r = $engine->search($s); printResults($r); //A query where we want red dresses under $100 and the top 5 brands returned as facets $s = new Search('red dress'); $s->addFilter(new Filter('price', '<', 100)); $s->addFacet(new EnumFacet('brand', 5));