@@ -135,4 +135,30 @@ public function testTheOriginalRequestCanBeObtainedForEachRequest()
135135 $ this ->assertEquals ('foo_token_two ' , $ batchResponse [1 ]->getAccessToken ());
136136 $ this ->assertEquals ('foo_token_three ' , $ batchResponse [2 ]->getAccessToken ());
137137 }
138+
139+ public function testHeadersFromBatchRequestCanBeAccessed ()
140+ {
141+ $ graphResponseJson = '[ ' ;
142+ $ graphResponseJson .= '{"code":200,"headers":[{"name":"Facebook-API-Version","value":"v2.0"},{"name":"ETag","value":"\"fooTag\""}],"body":"{\"foo\":\"bar\"}"} ' ;
143+ $ graphResponseJson .= ',{"code":200,"headers":[{"name":"Facebook-API-Version","value":"v2.5"},{"name":"ETag","value":"\"barTag\""}],"body":"{\"foo\":\"bar\"}"} ' ;
144+ $ graphResponseJson .= '] ' ;
145+ $ response = new FacebookResponse ($ this ->request , $ graphResponseJson , 200 );
146+
147+ $ requests = [
148+ new FacebookRequest ($ this ->app , 'foo_token_one ' , 'GET ' , '/me ' ),
149+ new FacebookRequest ($ this ->app , 'foo_token_two ' , 'GET ' , '/you ' ),
150+ ];
151+
152+ $ batchRequest = new FacebookBatchRequest ($ this ->app , $ requests );
153+ $ batchResponse = new FacebookBatchResponse ($ batchRequest , $ response );
154+
155+ $ this ->assertEquals ('v2.0 ' , $ batchResponse [0 ]->getGraphVersion ());
156+ $ this ->assertEquals ('"fooTag" ' , $ batchResponse [0 ]->getETag ());
157+ $ this ->assertEquals ('v2.5 ' , $ batchResponse [1 ]->getGraphVersion ());
158+ $ this ->assertEquals ('"barTag" ' , $ batchResponse [1 ]->getETag ());
159+ $ this ->assertEquals ([
160+ 'Facebook-API-Version ' => 'v2.5 ' ,
161+ 'ETag ' => '"barTag" ' ,
162+ ], $ batchResponse [1 ]->getHeaders ());
163+ }
138164}
0 commit comments