Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AgreementsConfigProviderTest.php
Go to the documentation of this file.
1 <?php
7 
10 
11 class AgreementsConfigProviderTest extends \PHPUnit\Framework\TestCase
12 {
16  protected $model;
17 
21  protected $scopeConfigMock;
22 
26  protected $escaperMock;
27 
31  private $checkoutAgreementsListMock;
32 
36  private $agreementsFilterMock;
37 
38  protected function setUp()
39  {
40  $this->scopeConfigMock = $this->createMock(\Magento\Framework\App\Config\ScopeConfigInterface::class);
41  $agreementsRepositoryMock = $this->createMock(
42  \Magento\CheckoutAgreements\Api\CheckoutAgreementsRepositoryInterface::class
43  );
44  $this->escaperMock = $this->createMock(\Magento\Framework\Escaper::class);
45 
46  $this->checkoutAgreementsListMock = $this->createMock(
47  \Magento\CheckoutAgreements\Api\CheckoutAgreementsListInterface::class
48  );
49  $this->agreementsFilterMock = $this->createMock(
50  \Magento\CheckoutAgreements\Model\Api\SearchCriteria\ActiveStoreAgreementsFilter::class
51  );
52 
53  $this->model = new \Magento\CheckoutAgreements\Model\AgreementsConfigProvider(
54  $this->scopeConfigMock,
55  $agreementsRepositoryMock,
56  $this->escaperMock,
57  $this->checkoutAgreementsListMock,
58  $this->agreementsFilterMock
59  );
60  }
61 
62  public function testGetConfigIfContentIsHtml()
63  {
64  $content = 'content';
65  $checkboxText = 'checkbox_text';
67  $agreementId = 100;
68  $expectedResult = [
69  'checkoutAgreements' => [
70  'isEnabled' => 1,
71  'agreements' => [
72  [
73  'content' => $content,
74  'checkboxText' => $checkboxText,
75  'mode' => $mode,
76  'agreementId' => $agreementId
77  ]
78  ]
79  ]
80  ];
81 
82  $this->scopeConfigMock->expects($this->once())
83  ->method('isSetFlag')
85  ->willReturn(true);
86 
87  $agreement = $this->createMock(\Magento\CheckoutAgreements\Api\Data\AgreementInterface::class);
88  $searchCriteriaMock = $this->createMock(\Magento\Framework\Api\SearchCriteria::class);
89  $this->agreementsFilterMock->expects($this->once())
90  ->method('buildSearchCriteria')
91  ->willReturn($searchCriteriaMock);
92  $this->checkoutAgreementsListMock->expects($this->once())
93  ->method('getList')
94  ->with($searchCriteriaMock)
95  ->willReturn([$agreement]);
96 
97  $agreement->expects($this->once())->method('getIsHtml')->willReturn(true);
98  $agreement->expects($this->once())->method('getContent')->willReturn($content);
99  $agreement->expects($this->once())->method('getCheckboxText')->willReturn($checkboxText);
100  $agreement->expects($this->once())->method('getMode')->willReturn($mode);
101  $agreement->expects($this->once())->method('getAgreementId')->willReturn($agreementId);
102 
103  $this->assertEquals($expectedResult, $this->model->getConfig());
104  }
105 
107  {
108  $content = 'content';
109  $escapedContent = 'escaped_content';
110  $checkboxText = 'checkbox_text';
112  $agreementId = 100;
113  $expectedResult = [
114  'checkoutAgreements' => [
115  'isEnabled' => 1,
116  'agreements' => [
117  [
118  'content' => $escapedContent,
119  'checkboxText' => $checkboxText,
120  'mode' => $mode,
121  'agreementId' => $agreementId
122  ]
123  ]
124  ]
125  ];
126 
127  $this->scopeConfigMock->expects($this->once())
128  ->method('isSetFlag')
130  ->willReturn(true);
131 
132  $agreement = $this->createMock(\Magento\CheckoutAgreements\Api\Data\AgreementInterface::class);
133  $searchCriteriaMock = $this->createMock(\Magento\Framework\Api\SearchCriteria::class);
134  $this->agreementsFilterMock->expects($this->once())
135  ->method('buildSearchCriteria')
136  ->willReturn($searchCriteriaMock);
137  $this->checkoutAgreementsListMock->expects($this->once())
138  ->method('getList')
139  ->with($searchCriteriaMock)
140  ->willReturn([$agreement]);
141 
142  $this->escaperMock->expects($this->once())->method('escapeHtml')->with($content)->willReturn($escapedContent);
143 
144  $agreement->expects($this->once())->method('getIsHtml')->willReturn(false);
145  $agreement->expects($this->once())->method('getContent')->willReturn($content);
146  $agreement->expects($this->once())->method('getCheckboxText')->willReturn($checkboxText);
147  $agreement->expects($this->once())->method('getMode')->willReturn($mode);
148  $agreement->expects($this->once())->method('getAgreementId')->willReturn($agreementId);
149 
150  $this->assertEquals($expectedResult, $this->model->getConfig());
151  }
152 }
if($exist=($block->getProductCollection() && $block->getProductCollection() ->getSize())) $mode
Definition: grid.phtml:15