31 private $checkoutAgreementsListMock;
36 private $agreementsFilterMock;
40 $this->scopeConfigMock = $this->createMock(\
Magento\Framework\
App\Config\ScopeConfigInterface::class);
41 $agreementsRepositoryMock = $this->createMock(
42 \
Magento\CheckoutAgreements\Api\CheckoutAgreementsRepositoryInterface::class
44 $this->escaperMock = $this->createMock(\
Magento\Framework\Escaper::class);
46 $this->checkoutAgreementsListMock = $this->createMock(
47 \
Magento\CheckoutAgreements\Api\CheckoutAgreementsListInterface::class
49 $this->agreementsFilterMock = $this->createMock(
50 \
Magento\CheckoutAgreements\Model\Api\SearchCriteria\ActiveStoreAgreementsFilter::class
53 $this->model = new \Magento\CheckoutAgreements\Model\AgreementsConfigProvider(
54 $this->scopeConfigMock,
55 $agreementsRepositoryMock,
57 $this->checkoutAgreementsListMock,
58 $this->agreementsFilterMock
65 $checkboxText =
'checkbox_text';
69 'checkoutAgreements' => [
74 'checkboxText' => $checkboxText,
76 'agreementId' => $agreementId
82 $this->scopeConfigMock->expects($this->once())
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())
94 ->with($searchCriteriaMock)
97 $agreement->expects($this->once())->method(
'getIsHtml')->willReturn(
true);
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);
103 $this->assertEquals($expectedResult, $this->model->getConfig());
109 $escapedContent =
'escaped_content';
110 $checkboxText =
'checkbox_text';
114 'checkoutAgreements' => [
118 'content' => $escapedContent,
119 'checkboxText' => $checkboxText,
121 'agreementId' => $agreementId
127 $this->scopeConfigMock->expects($this->once())
128 ->method(
'isSetFlag')
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())
139 ->with($searchCriteriaMock)
142 $this->escaperMock->expects($this->once())->method(
'escapeHtml')->with(
$content)->willReturn($escapedContent);
144 $agreement->expects($this->once())->method(
'getIsHtml')->willReturn(
false);
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);
150 $this->assertEquals($expectedResult, $this->model->getConfig());
if($exist=($block->getProductCollection() && $block->getProductCollection() ->getSize())) $mode
testGetConfigIfContentIsNotHtml()
testGetConfigIfContentIsHtml()