/** * Tests InputAtomConverter->convertAppData() */ public function testConvertAppData() { $xml = '<?xml version="1.0" encoding="UTF-8"?> <entry> <content type="application/xml"> <appdata xmlns="http://ns.opensocial.org/2008/opensocial"> <sign>Virgo</sign> </appdata> </content> <author> <uri>urn:guid:1</uri> <name>api.example.org:1</name> </author> <id>urn:guid:1</id> <title>appdata id 1</title> <updated>2008-08-06T22:36:20+02:00</updated> </entry>'; $appdata = $this->InputAtomConverter->convertAppData($xml); $expect = array('sign' => 'Virgo'); $this->assertEquals($expect, $appdata); }
private function decodeRequests($requestParam, $requestType, $format = 'json') { if (empty($requestParam)) { return null; } switch ($format) { case 'json': $inputConverter = new InputJsonConverter(); break; case 'atom': $inputConverter = new InputAtomConverter(); break; default: throw new Exception("Invalid or unsupported input format"); break; } switch ($requestType) { case 'people': $ret = $inputConverter->convertPeople($requestParam); break; case 'activities': $ret = $inputConverter->convertActivities($requestParam); break; case 'messages': $ret = $inputConverter->convertMessages($requestParam); break; case 'appdata': $ret = $inputConverter->convertAppData($requestParam); break; case 'jsonbatch': // this type is only used by the internal json batch format if ($format != 'json') { throw new Exception("the json batch only supports the json input format"); } $ret = $inputConverter->convertJsonBatch($requestParam); break; //TODO add 'groups' and 'messages' here //TODO add 'groups' and 'messages' here default: throw new Exception("Unsupported REST call"); break; } return $ret; }