Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ConditionTest.php
Go to the documentation of this file.
1 <?php
7 
12 
13 class ConditionTest extends \PHPUnit\Framework\TestCase
14 {
18  private $model;
19 
20  public function testApplyToCollection()
21  {
22  $collection = $this->getMockedAbstractCollection();
23  $this->assertInstanceOf(
24  \Magento\Catalog\Model\Product\Condition::class,
25  $this->model->applyToCollection($collection)
26  );
27  }
28 
29  public function testGetIdsSelect()
30  {
31  $connection = $this->getMockedAdapterInterface();
32  $this->assertInstanceOf(\Magento\Framework\DB\Select::class, $this->model->getIdsSelect($connection));
33  $this->model->setTable(null);
34  $this->assertEmpty($this->model->getIdsSelect($connection));
35  }
36 
37  protected function setUp()
38  {
39  $helper = new ObjectManager($this);
40  $this->model = $helper->getObject(\Magento\Catalog\Model\Product\Condition::class);
41  $this->model->setTable('testTable')
42  ->setPkFieldName('testFieldName');
43  }
44 
48  private function getMockedAbstractCollection()
49  {
50  $mockBuilder = $this->getMockBuilder(\Magento\Eav\Model\Entity\Collection\AbstractCollection::class)
51  ->setMethods(['joinTable'])
52  ->disableOriginalConstructor();
53  $mock = $mockBuilder->getMockForAbstractClass();
54 
55  $mock->expects($this->any())
56  ->method('joinTable');
57 
58  return $mock;
59  }
60 
64  private function getMockedAdapterInterface()
65  {
66  $mockedDbSelect = $this->getMockedDbSelect();
67 
68  $mockBuilder = $this->getMockBuilder(\Magento\Framework\DB\Adapter\AdapterInterface::class)
69  ->setMethods(['select'])
70  ->disableOriginalConstructor();
71  $mock = $mockBuilder->getMockForAbstractClass();
72 
73  $mock->expects($this->any())
74  ->method('select')
75  ->will($this->returnValue($mockedDbSelect));
76 
77  return $mock;
78  }
79 
83  private function getMockedDbSelect()
84  {
85  $mockBuilder = $this->getMockBuilder(\Magento\Framework\DB\Select::class)
86  ->setMethods(['from'])
87  ->disableOriginalConstructor();
88  $mock = $mockBuilder->getMockForAbstractClass();
89 
90  $mock->expects($this->any())
91  ->method('from')
92  ->will($this->returnValue($mock));
93 
94  return $mock;
95  }
96 }
$helper
Definition: iframe.phtml:13
$connection
Definition: bulk.php:13