Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
QueryResponseTest.php
Go to the documentation of this file.
1 <?php
7 
9 
10 class QueryResponseTest extends \PHPUnit\Framework\TestCase
11 {
15  private $documents = [];
16 
20  private $aggregations = [];
21 
25  private $queryResponse;
26 
27  protected function setUp()
28  {
29  $helper = new ObjectManager($this);
30 
31  for ($count = 0; $count < 5; $count++) {
32  $document = $this->getMockBuilder(\Magento\Framework\Api\Search\Document::class)
33  ->disableOriginalConstructor()
34  ->getMock();
35 
36  $document->expects($this->any())->method('getId')->will($this->returnValue($count));
37  $this->documents[] = $document;
38  }
39 
40  $this->aggregations = $this->getMockBuilder(\Magento\Framework\Search\Response\Aggregation::class)
41  ->disableOriginalConstructor()
42  ->getMock();
43 
44  $this->queryResponse = $helper->getObject(
45  \Magento\Framework\Search\Response\QueryResponse::class,
46  [
47  'documents' => $this->documents,
48  'aggregations' => $this->aggregations,
49  ]
50  );
51  }
52 
53  public function testGetIterator()
54  {
55  $count = 0;
56  foreach ($this->queryResponse as $document) {
57  $this->assertEquals($document->getId(), $count);
58  $count++;
59  }
60  }
61 
62  public function testCount()
63  {
64  $this->assertEquals(count($this->queryResponse), 5);
65  }
66 
67  public function testGetAggregations()
68  {
69  $aggregations = $this->queryResponse->getAggregations();
70  $this->assertInstanceOf(\Magento\Framework\Search\Response\Aggregation::class, $aggregations);
71  }
72 }
$helper
Definition: iframe.phtml:13
$count
Definition: recent.phtml:13