@@ -280,6 +280,31 @@ public function testBatchRequestsWithFilesGetConvertedToAnArray()
280
280
], $ batchRequestArray );
281
281
}
282
282
283
+ public function testBatchRequestsWithOptionsGetConvertedToAnArray ()
284
+ {
285
+ $ request = new FacebookRequest (null , null , 'GET ' , '/bar ' );
286
+ $ batchRequest = $ this ->createBatchRequest ();
287
+ $ batchRequest ->add ($ request , [
288
+ 'name ' => 'foo_name ' ,
289
+ 'omit_response_on_success ' => false ,
290
+ ]);
291
+
292
+ $ requests = $ batchRequest ->getRequests ();
293
+
294
+ $ options = $ requests [0 ]['options ' ];
295
+ $ options ['name ' ] = $ requests [0 ]['name ' ];
296
+
297
+ $ batchRequestArray = $ batchRequest ->requestEntityToBatchArray ($ requests [0 ]['request ' ], $ options );
298
+
299
+ $ this ->assertEquals ([
300
+ 'headers ' => $ this ->defaultHeaders (),
301
+ 'method ' => 'GET ' ,
302
+ 'relative_url ' => '/ ' . Facebook::DEFAULT_GRAPH_VERSION . '/bar?access_token=foo_token&appsecret_proof=df4256903ba4e23636cc142117aa632133d75c642bd2a68955be1443bd14deb9 ' ,
303
+ 'name ' => 'foo_name ' ,
304
+ 'omit_response_on_success ' => false ,
305
+ ], $ batchRequestArray );
306
+ }
307
+
283
308
public function testPreppingABatchRequestProperlySetsThePostParams ()
284
309
{
285
310
$ batchRequest = $ this ->createBatchRequest ();
@@ -328,6 +353,30 @@ public function testPreppingABatchRequestProperlyMovesTheFiles()
328
353
$ this ->assertEquals ($ expectedBatchParams , $ params );
329
354
}
330
355
356
+ public function testPreppingABatchRequestWithOptionsProperlySetsThePostParams ()
357
+ {
358
+ $ batchRequest = $ this ->createBatchRequest ();
359
+ $ batchRequest ->add (new FacebookRequest (null , null , 'GET ' , '/foo ' ), [
360
+ 'name ' => 'foo_name ' ,
361
+ 'omit_response_on_success ' => false ,
362
+ ]);
363
+
364
+ $ batchRequest ->prepareRequestsForBatch ();
365
+ $ params = $ batchRequest ->getParams ();
366
+
367
+ $ expectedHeaders = json_encode ($ this ->defaultHeaders ());
368
+ $ version = Facebook::DEFAULT_GRAPH_VERSION ;
369
+
370
+ $ expectedBatchParams = [
371
+ 'batch ' => '[{"headers": ' . $ expectedHeaders . ',"method":"GET","relative_url":" \\/ ' . $ version . '\\/foo?access_token=foo_token&appsecret_proof=df4256903ba4e23636cc142117aa632133d75c642bd2a68955be1443bd14deb9", '
372
+ . '"name":"foo_name","omit_response_on_success":false}] ' ,
373
+ 'include_headers ' => true ,
374
+ 'access_token ' => 'foo_token ' ,
375
+ 'appsecret_proof ' => 'df4256903ba4e23636cc142117aa632133d75c642bd2a68955be1443bd14deb9 ' ,
376
+ ];
377
+ $ this ->assertEquals ($ expectedBatchParams , $ params );
378
+ }
379
+
331
380
private function assertRequestContainsAppAndToken (FacebookRequest $ request , FacebookApp $ expectedApp , $ expectedToken )
332
381
{
333
382
$ app = $ request ->getApp ();
@@ -373,7 +422,9 @@ private function assertRequestsMatch($requests, $formattedRequests)
373
422
foreach ($ requests as $ name => $ request ) {
374
423
$ expectedRequests [] = [
375
424
'name ' => $ name ,
376
- 'request ' => $ request
425
+ 'request ' => $ request ,
426
+ 'attached_files ' => null ,
427
+ 'options ' => [],
377
428
];
378
429
}
379
430
$ this ->assertEquals ($ expectedRequests , $ formattedRequests );
0 commit comments