Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
QueryContainerTest.php
Go to the documentation of this file.
1 <?php
7 
11 
12 class QueryContainerTest extends \PHPUnit\Framework\TestCase
13 {
15  private $select;
16 
18  private $matchContainerFactory;
19 
21  private $requestQuery;
22 
24  private $queryContainer;
25 
26  protected function setUp()
27  {
28  $helper = new ObjectManager($this);
29 
30  $this->select = $this->getMockBuilder(\Magento\Framework\DB\Select::class)
31  ->disableOriginalConstructor()
32  ->getMock();
33 
34  $this->matchContainerFactory = $this->getMockBuilder(
35  \Magento\Framework\Search\Adapter\Mysql\Query\MatchContainerFactory::class
36  )
37  ->setMethods(['create'])
38  ->disableOriginalConstructor()
39  ->getMock();
40 
41  $this->requestQuery = $this->getMockBuilder(\Magento\Framework\Search\Request\QueryInterface::class)
42  ->disableOriginalConstructor()
43  ->getMockForAbstractClass();
44 
45  $this->queryContainer = $helper->getObject(
46  \Magento\Framework\Search\Adapter\Mysql\Query\QueryContainer::class,
47  [
48  'matchContainerFactory' => $this->matchContainerFactory,
49  ]
50  );
51  }
52 
53  public function testBuild()
54  {
55  $this->matchContainerFactory->expects($this->once())->method('create')
56  ->willReturn('asdf');
57 
58  $result = $this->queryContainer->addMatchQuery(
59  $this->select,
60  $this->requestQuery,
62  );
63  $this->assertEquals($this->select, $result);
64  }
65 
66  public function testGetDerivedQueries()
67  {
68  $this->matchContainerFactory->expects($this->once())->method('create')
69  ->willReturn('asdf');
70 
71  $result = $this->queryContainer->addMatchQuery(
72  $this->select,
73  $this->requestQuery,
75  );
76  $this->assertEquals($this->select, $result);
77 
78  $queries = $this->queryContainer->getMatchQueries();
79  $this->assertCount(1, $queries);
80  $this->assertEquals('asdf', reset($queries));
81  }
82 }
$helper
Definition: iframe.phtml:13