File tree Expand file tree Collapse file tree 2 files changed +60
-1
lines changed Expand file tree Collapse file tree 2 files changed +60
-1
lines changed Original file line number Diff line number Diff line change @@ -99,6 +99,24 @@ public function setSequenceType($value)
99
99
return $ this ->setParameter ('sequenceType ' , $ value );
100
100
}
101
101
102
+ /**
103
+ * @return string
104
+ */
105
+ public function getInclude ()
106
+ {
107
+ return $ this ->getParameter ('include ' );
108
+ }
109
+
110
+ /**
111
+ * @param string $value
112
+ * @return $this
113
+ */
114
+ public function setInclude ($ value )
115
+ {
116
+ return $ this ->setParameter ('include ' , $ value );
117
+ }
118
+
119
+
102
120
/**
103
121
* @return array
104
122
* @throws InvalidRequestException
@@ -155,7 +173,13 @@ public function getData()
155
173
*/
156
174
public function sendData ($ data )
157
175
{
158
- $ response = $ this ->sendRequest (self ::POST , '/payments ' , $ data );
176
+ $ endpoint = '/payments ' ;
177
+
178
+ if ($ include = $ this ->getInclude ()) {
179
+ $ endpoint .= '?include= ' . $ include ;
180
+ }
181
+
182
+ $ response = $ this ->sendRequest (self ::POST , $ endpoint , $ data );
159
183
160
184
return $ this ->response = new PurchaseResponse ($ this , $ response );
161
185
}
Original file line number Diff line number Diff line change @@ -174,6 +174,41 @@ public function testSendSuccess()
174
174
);
175
175
}
176
176
177
+ public function testSendSuccessWithQrcode ()
178
+ {
179
+ $ this ->setMockHttpResponse ('PurchaseSuccess.txt ' );
180
+ $ response = $ this ->request ->setInclude ('details.qrCode ' )->send ();
181
+
182
+ $ this ->assertEqualRequest (
183
+ new Request (
184
+ "POST " ,
185
+ "https://api.mollie.com/v2/payments?include=details.qrCode " ,
186
+ [],
187
+ '{
188
+ "amount":{
189
+ "value":"12.00",
190
+ "currency":"USD"
191
+ },
192
+ "description":"Description",
193
+ "redirectUrl":"https:\/\/www.example.com\/return",
194
+ "method":null,
195
+ "metadata":[
196
+ "meta"
197
+ ],
198
+ "issuer":"my bank",
199
+ "locale":"fr_FR",
200
+ "billingEmail":"[email protected] "
201
+ } '
202
+ ),
203
+ $ this ->getMockClient ()->getLastRequest ()
204
+ );
205
+
206
+
207
+ $ this ->assertInstanceOf (PurchaseResponse::class, $ response );
208
+ $ this ->assertFalse ($ response ->isSuccessful ());
209
+ $ this ->assertTrue ($ response ->isRedirect ());
210
+ }
211
+
177
212
public function testIssuerFailure ()
178
213
{
179
214
$ this ->setMockHttpResponse ('PurchaseIssuerFailure.txt ' );
You can’t perform that action at this time.
0 commit comments