@@ 73-98 (lines=26) @@ | ||
70 | /** |
|
71 | * @test |
|
72 | */ |
|
73 | public function magicCall500Response() |
|
74 | { |
|
75 | $this->deferredHttpBinding = new FulfilledPromise($this->httpBindingMock); |
|
76 | ||
77 | $this->httpBindingMock->method('request') |
|
78 | ->willReturn( |
|
79 | new Request('POST', 'www.endpoint.com') |
|
80 | ) |
|
81 | ->with( |
|
82 | 'someSoapMethod', [['some-key' => 'some-value']] |
|
83 | ); |
|
84 | ||
85 | $response = new Response('500'); |
|
86 | $this->httpBindingMock->method('response') |
|
87 | ->willReturn( |
|
88 | 'SoapResult' |
|
89 | ) |
|
90 | ->with( |
|
91 | $response, 'someSoapMethod', null |
|
92 | ); |
|
93 | ||
94 | $this->handlerMock->append(GuzzleRequestException::create(new Request('POST', 'www.endpoint.com'), $response)); |
|
95 | ||
96 | $client = new SoapClient($this->clientMock, $this->deferredHttpBinding); |
|
97 | $this->assertEquals('SoapResult', $client->someSoapMethod(['some-key' => 'some-value'])->wait()); |
|
98 | } |
|
99 | ||
100 | /** |
|
101 | * @test |
|
@@ 153-178 (lines=26) @@ | ||
150 | * @test |
|
151 | * @expectedException \SoapFault |
|
152 | */ |
|
153 | public function magicCallClientReturnSoapFault() |
|
154 | { |
|
155 | $this->deferredHttpBinding = new FulfilledPromise($this->httpBindingMock); |
|
156 | ||
157 | $this->httpBindingMock->method('request') |
|
158 | ->willReturn( |
|
159 | new Request('POST', 'www.endpoint.com') |
|
160 | ) |
|
161 | ->with( |
|
162 | 'someSoapMethod', [['some-key' => 'some-value']] |
|
163 | ); |
|
164 | ||
165 | $response = new Response('200', [], 'body'); |
|
166 | $this->httpBindingMock->method('response') |
|
167 | ->will( |
|
168 | $this->throwException(new \SoapFault('soap fault', 'soap fault')) |
|
169 | ) |
|
170 | ->with( |
|
171 | $response, 'someSoapMethod', null |
|
172 | ); |
|
173 | ||
174 | $this->handlerMock->append($response); |
|
175 | ||
176 | $client = new SoapClient($this->clientMock, $this->deferredHttpBinding); |
|
177 | $client->someSoapMethod(['some-key' => 'some-value'])->wait(); |
|
178 | } |
|
179 | ||
180 | /** |
|
181 | * @test |
|
@@ 183-208 (lines=26) @@ | ||
180 | /** |
|
181 | * @test |
|
182 | */ |
|
183 | public function magicCallSuccess() |
|
184 | { |
|
185 | $this->deferredHttpBinding = new FulfilledPromise($this->httpBindingMock); |
|
186 | ||
187 | $this->httpBindingMock->method('request') |
|
188 | ->willReturn( |
|
189 | new Request('POST', 'www.endpoint.com') |
|
190 | ) |
|
191 | ->with( |
|
192 | 'someSoapMethod', [['some-key' => 'some-value']] |
|
193 | ); |
|
194 | ||
195 | $response = new Response('200', [], 'body'); |
|
196 | $this->httpBindingMock->method('response') |
|
197 | ->willReturn( |
|
198 | 'SoapResult' |
|
199 | ) |
|
200 | ->with( |
|
201 | $response, 'someSoapMethod', null |
|
202 | ); |
|
203 | ||
204 | $this->handlerMock->append($response); |
|
205 | ||
206 | $client = new SoapClient($this->clientMock, $this->deferredHttpBinding); |
|
207 | $this->assertEquals('SoapResult', $client->someSoapMethod(['some-key' => 'some-value'])->wait()); |
|
208 | } |
|
209 | ||
210 | /** |
|
211 | * @test |