blob: 8123e6716cd276a164a3b534caae454ff627b4da [file] [log] [blame]
<?php
namespace apache\shindig\test\social;
use apache\shindig\social\converters\OutputXmlConverter;
use apache\shindig\social\service\ResponseItem;
use apache\shindig\common\sample\BasicSecurityToken;
use apache\shindig\social\service\RestRequestItem;
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* OutputXmlConverter test case.
*/
class OutputXmlConverterTest extends \PHPUnit_Framework_TestCase {
/**
* @var OutputXmlConverter
*/
private $OutputXmlConverter;
/**
* Prepares the environment before running a test.
*/
protected function setUp() {
$_SERVER['REQUEST_METHOD'] = 'GET';
parent::setUp();
$this->OutputXmlConverter = new OutputXmlConverter();
}
/**
* Cleans up the environment after running a test.
*/
protected function tearDown() {
$this->OutputXmlConverter = null;
parent::tearDown();
}
/**
* Tests OutputXmlConverter->outputResponse()
*/
public function testOutputResponse() {
$outputConverter = new OutputXmlConverter();
$servletRequest = array('url' => '/people/1/@self');
$token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app', 'domain', 'appUrl', '1', 'default');
$requestItem = RestRequestItem::createWithRequest($servletRequest, $token, 'convertXml', $outputConverter);
$requestItem->applyUrlTemplate("/people/{userId}/{groupId}/{personId}");
$entry = array('isOwner' => false, 'isViewer' => false,
'displayName' => '1 1', 'id' => '1');
$response = array('entry' => $entry);
$responseItem = new ResponseItem(null, null, $response);
ob_start();
$outputConverter->outputResponse($responseItem, $requestItem);
$output = ob_get_clean();
$expected = '<?xml version="1.0" encoding="UTF-8"?>
<response>
<entry>
<isOwner></isOwner>
<isViewer></isViewer>
<displayName>1 1</displayName>
<id>1</id>
</entry>
</response>
';
$outputXml = simplexml_load_string($output);
$expectedXml = simplexml_load_string($expected);
$this->assertEquals($expectedXml, $outputXml);
}
}