public function testAGraphNodeWillBeCastAsAGraphNode() { $data = json_encode(['id' => '123', 'name' => 'Foo McBar', 'link' => 'http://facebook/foo']); $res = new FacebookResponse($this->request, $data); $factory = new GraphObjectFactory($res); $graphObject = $factory->makeGraphObject(); $graphData = $graphObject->asArray(); $this->assertInstanceOf('\\Facebook\\GraphNodes\\GraphObject', $graphObject); $this->assertEquals(['id' => '123', 'name' => 'Foo McBar', 'link' => 'http://facebook/foo'], $graphData); }
public function testAGraphObjectWithARootDataKeyWillBeCastAsAGraphObject() { $dataFromGraph = ['data' => ['id' => '123', 'name' => 'Foo McBar', 'link' => 'http://facebook/foo']]; $this->responseMock->shouldReceive('getDecodedBody')->once()->andReturn($dataFromGraph); $factory = new GraphObjectFactory($this->responseMock); $graphObject = $factory->makeGraphObject(); $graphData = $graphObject->asArray(); $this->assertInstanceOf('\\Facebook\\GraphNodes\\GraphObject', $graphObject); $this->assertEquals(['id' => '123', 'name' => 'Foo McBar', 'link' => 'http://facebook/foo'], $graphData); }
/** * Instantiate a new GraphObject from response. * * @param string|null $subclassName The GraphObject sub class to cast to. * * @return \Facebook\GraphNodes\GraphObject * * @throws FacebookSDKException */ public function getGraphObject($subclassName = null) { $factory = new GraphObjectFactory($this); return $factory->makeGraphObject($subclassName); }