26 private $storeManagerMock;
29 private $scopeConfigMock;
32 private $urlBuilderMock;
35 private $serializerMock;
39 $this->contextMock = $this->getMockBuilder(Context::class)
40 ->disableOriginalConstructor()
43 $this->storeManagerMock = $this->getMockBuilder(StoreManagerInterface::class)
45 $this->scopeConfigMock = $this->getMockBuilder(ScopeConfigInterface::class)
47 $this->urlBuilderMock = $this->getMockBuilder(UrlInterface::class)
50 $this->contextMock->expects($this->once())
51 ->method(
'getStoreManager')
52 ->willReturn($this->storeManagerMock);
53 $this->contextMock->expects($this->once())
54 ->method(
'getScopeConfig')
55 ->willReturn($this->scopeConfigMock);
56 $this->contextMock->expects($this->once())
57 ->method(
'getUrlBuilder')
58 ->willReturn($this->urlBuilderMock);
59 $escaperMock = $this->getMockBuilder(\
Magento\Framework\Escaper::class)
60 ->disableOriginalConstructor()
62 $escaperMock->method(
'escapeHtml')
65 return 'escapeHtml' . $string;
68 $escaperMock->method(
'escapeUrl')
71 return 'escapeUrl' . $string;
74 $this->contextMock->expects($this->once())
75 ->method(
'getEscaper')
76 ->willReturn($escaperMock);
78 $this->serializerMock = $this->getMockBuilder(\
Magento\Framework\Serialize\Serializer\Json::class)
98 public function testGetConfig($isAutocomplete, $baseUrl, $registerUrl, $forgotUrl, array
$result)
100 $this->scopeConfigMock->expects($this->any())
103 ->willReturn($isAutocomplete);
106 $storeMock = $this->getMockBuilder(StoreInterface::class)
107 ->setMethods([
'getBaseUrl'])
108 ->getMockForAbstractClass();
110 $this->storeManagerMock->expects($this->any())
113 ->willReturn($storeMock);
115 $storeMock->expects($this->any())
116 ->method(
'getBaseUrl')
117 ->willReturn($baseUrl);
119 $this->urlBuilderMock->expects($this->any())
123 [
'customer/account/create', [], $registerUrl],
124 [
'customer/account/forgotpassword', [], $forgotUrl],
128 $this->assertEquals(
$result, $this->model->getConfig());
143 'autocomplete' =>
'escapeHtmloff',
144 'customerRegisterUrl' =>
'escapeUrlreg',
145 'customerForgotPasswordUrl' =>
'escapeUrlforgot',
146 'baseUrl' =>
'escapeUrlbase',
155 'autocomplete' =>
'escapeHtmlon',
156 'customerRegisterUrl' =>
'escapeUrlreg',
157 'customerForgotPasswordUrl' =>
'escapeUrlforgot',
158 'baseUrl' =>
'escapeUrl',
167 'autocomplete' =>
'escapeHtmloff',
168 'customerRegisterUrl' =>
'escapeUrl',
169 'customerForgotPasswordUrl' =>
'escapeUrlforgot',
170 'baseUrl' =>
'escapeUrlbase',
179 'autocomplete' =>
'escapeHtmlon',
180 'customerRegisterUrl' =>
'escapeUrlreg',
181 'customerForgotPasswordUrl' =>
'escapeUrl',
182 'baseUrl' =>
'escapeUrlbase',
198 public function testGetSerializedConfig($isAutocomplete, $baseUrl, $registerUrl, $forgotUrl, array
$result)
200 $this->scopeConfigMock->expects($this->any())
203 ->willReturn($isAutocomplete);
206 $storeMock = $this->getMockBuilder(StoreInterface::class)
207 ->setMethods([
'getBaseUrl'])
208 ->getMockForAbstractClass();
210 $this->storeManagerMock->expects($this->any())
213 ->willReturn($storeMock);
215 $storeMock->expects($this->any())
216 ->method(
'getBaseUrl')
217 ->willReturn($baseUrl);
219 $this->urlBuilderMock->expects($this->any())
223 [
'customer/account/create', [], $registerUrl],
224 [
'customer/account/forgotpassword', [], $forgotUrl],
227 $this->serializerMock->expects($this->any())->method(
'serialize')
229 json_encode($this->model->getConfig())
232 $this->assertEquals(json_encode(
$result), $this->model->getSerializedConfig());