diff options
Diffstat (limited to 'vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php')
-rw-r--r-- | vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php | 115 |
1 files changed, 79 insertions, 36 deletions
diff --git a/vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php b/vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php index 3d6af870..8395f39a 100644 --- a/vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php +++ b/vendor/ruflin/elastica/test/lib/Elastica/Test/Filter/IdsTest.php @@ -1,5 +1,4 @@ <?php - namespace Elastica\Test\Filter; use Elastica\Document; @@ -10,81 +9,82 @@ use Elastica\Test\Base as BaseTest; class IdsTest extends BaseTest { - protected $_index; - protected $_type; - - public function setUp() + protected function _getIndexForTest() { - $client = $this->_getClient(); - $index = $client->getIndex('test'); - $index->create(array(), true); - - $type1 = $index->getType('helloworld1'); - $type2 = $index->getType('helloworld2'); + $index = $this->_createIndex(); // Add documents to first type + $docs = array(); for ($i = 1; $i < 100; $i++) { - $doc = new Document($i, array('name' => 'ruflin')); - $type1->addDocument($doc); + $docs[] = new Document($i, array('name' => 'ruflin')); } + $index->getType('helloworld1')->addDocuments($docs); // Add documents to second type + $docs = array(); for ($i = 1; $i < 100; $i++) { - $doc = new Document($i, array('name' => 'ruflin')); - $type2->addDocument($doc); + $docs[] = new Document($i, array('name' => 'ruflin')); } - // This is a special id that will only be in the second type - $doc = new Document('101', array('name' => 'ruflin')); - $type2->addDocument($doc); + $docs[] = new Document(101, array('name' => 'ruflin')); + $index->getType('helloworld2')->addDocuments($docs); $index->optimize(); $index->refresh(); - $this->_type = $type1; - $this->_index = $index; + return $index; } - public function tearDown() + protected function _getTypeForTest() { - $client = $this->_getClient(); - $index = $client->getIndex('test'); - $index->delete(); + return $this->_getIndexForTest()->getType('helloworld1'); } + /** + * @group functional + */ public function testSetIdsSearchSingle() { $filter = new Ids(); $filter->setIds('1'); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); $this->assertEquals(1, $resultSet->count()); } + /** + * @group functional + */ public function testSetIdsSearchArray() { $filter = new Ids(); $filter->setIds(array(1, 7, 13)); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); $this->assertEquals(3, $resultSet->count()); } + /** + * @group functional + */ public function testAddIdsSearchSingle() { $filter = new Ids(); $filter->addId('39'); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); $this->assertEquals(1, $resultSet->count()); } + /** + * @group functional + */ public function testAddIdsSearchSingleNotInType() { $filter = new Ids(); @@ -94,11 +94,14 @@ class IdsTest extends BaseTest $filter->addId(104); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); $this->assertEquals(1, $resultSet->count()); } + /** + * @group functional + */ public function testComboIdsSearchArray() { $filter = new Ids(); @@ -106,11 +109,14 @@ class IdsTest extends BaseTest $filter->addId('39'); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); $this->assertEquals(4, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeSingleSearchSingle() { $filter = new Ids(); @@ -118,11 +124,14 @@ class IdsTest extends BaseTest $filter->setType('helloworld1'); $query = Query::create($filter); - $resultSet = $this->_index->search($query); + $resultSet = $this->_getIndexForTest()->search($query); $this->assertEquals(1, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeSingleSearchArray() { $filter = new Ids(); @@ -130,11 +139,14 @@ class IdsTest extends BaseTest $filter->setType('helloworld1'); $query = Query::create($filter); - $resultSet = $this->_index->search($query); + $resultSet = $this->_getIndexForTest()->search($query); $this->assertEquals(2, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeSingleSearchSingleDocInOtherType() { $filter = new Ids(); @@ -144,12 +156,15 @@ class IdsTest extends BaseTest $filter->setType('helloworld1'); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); // ...therefore 0 results should be returned $this->assertEquals(0, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeSingleSearchArrayDocInOtherType() { $filter = new Ids(); @@ -159,12 +174,15 @@ class IdsTest extends BaseTest $filter->setType('helloworld1'); $query = Query::create($filter); - $resultSet = $this->_type->search($query); + $resultSet = $this->_getTypeForTest()->search($query); // ...therefore only 1 result should be returned $this->assertEquals(1, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeArraySearchArray() { $filter = new Ids(); @@ -172,11 +190,14 @@ class IdsTest extends BaseTest $filter->setType(array('helloworld1', 'helloworld2')); $query = Query::create($filter); - $resultSet = $this->_index->search($query); + $resultSet = $this->_getIndexForTest()->search($query); $this->assertEquals(4, $resultSet->count()); } + /** + * @group functional + */ public function testSetTypeArraySearchSingle() { $filter = new Ids(); @@ -184,18 +205,40 @@ class IdsTest extends BaseTest $filter->setType(array('helloworld1', 'helloworld2')); $query = Query::create($filter); - $resultSet = $this->_index->search($query); + $resultSet = $this->_getIndexForTest()->search($query); $this->assertEquals(2, $resultSet->count()); } + /** + * @group unit + */ public function testFilterTypeAndTypeCollision() { // This test ensures that Elastica\Type and Elastica\Filter\Type - // do not collide when used together, which at one point + // do not collide when used together, which at one point // happened because of a use statement in Elastica\Filter\Ids // Test goal is to make sure a Fatal Error is not triggered $filterType = new Type(); $filter = new Ids(); } + + /** + * @group unit + */ + public function testAddType() + { + $type = $this->_getClient()->getIndex('indexname')->getType('typename'); + + $filter = new Ids(); + + $filter->addType('foo'); + $this->assertEquals(array('foo'), $filter->getParam('type')); + + $filter->addType($type); + $this->assertEquals(array('foo', $type->getName()), $filter->getParam('type')); + + $returnValue = $filter->addType('bar'); + $this->assertInstanceOf('Elastica\Filter\Ids', $returnValue); + } } |