13 use Psr\Log\LoggerInterface;
38 private $httpClientMock;
43 private $analyticsTokenMock;
48 private $responseResolverMock;
55 $this->loggerMock = $this->getMockBuilder(LoggerInterface::class)
56 ->disableOriginalConstructor()
59 $this->configMock = $this->getMockBuilder(ScopeConfigInterface::class)
60 ->disableOriginalConstructor()
63 $this->httpClientMock = $this->getMockBuilder(ClientInterface::class)
64 ->disableOriginalConstructor()
67 $this->analyticsTokenMock = $this->getMockBuilder(AnalyticsToken::class)
68 ->disableOriginalConstructor()
71 $this->responseResolverMock = $this->getMockBuilder(ResponseResolver::class)
72 ->disableOriginalConstructor()
76 $this->analyticsTokenMock,
77 $this->httpClientMock,
79 $this->responseResolverMock,
89 private function getTestData()
93 'url' =>
'http://www.mystore.com',
94 'access-token' =>
'thisisaccesstoken',
96 'body'=> [
'access-token' =>
'thisisaccesstoken',
'url' =>
'http://www.mystore.com'],
105 $data = $this->getTestData();
107 $this->analyticsTokenMock->expects($this->once())
108 ->method(
'isTokenExist')
110 $this->analyticsTokenMock->expects($this->once())
112 ->willReturn(
$data[
'access-token']);
114 $this->configMock->expects($this->any())
116 ->willReturn(
$data[
'url']);
118 $this->httpClientMock->expects($this->once())
126 $this->responseResolverMock->expects($this->once())
127 ->method(
'getResult')
128 ->willReturn(
$data[
'otp']);
132 $this->subject->call()
141 $this->analyticsTokenMock->expects($this->once())
142 ->method(
'isTokenExist')
145 $this->httpClientMock->expects($this->never())
148 $this->assertFalse($this->subject->call());
156 $data = $this->getTestData();
158 $this->analyticsTokenMock->expects($this->once())
159 ->method(
'isTokenExist')
161 $this->analyticsTokenMock->expects($this->once())
163 ->willReturn(
$data[
'access-token']);
165 $this->configMock->expects($this->any())
167 ->willReturn(
$data[
'url']);
169 $this->httpClientMock->expects($this->once())
178 $this->responseResolverMock->expects($this->once())
179 ->method(
'getResult')
182 $this->loggerMock->expects($this->once())
185 $this->assertFalse($this->subject->call());