Files
DomFramework/Tests/RestTest.php

78 lines
1.7 KiB
PHP

<?php
/**
* DomFramework - Tests
* @package domframework
* @author Dominique Fournier <dominique@fournier38.fr>
* @license BSD
*/
namespace Domframework\Tests;
use Domframework\Rest;
/**
* Test the domframework REST part
*/
class RestTest extends \PHPUnit_Framework_TestCase
{
/**
* No param, JSON by default
*/
public function testChooseType1()
{
$rest = new Rest();
$res = $rest->chooseType();
$this->assertSame($res, "json");
}
/**
* If limited allowedTypes, return the first one as default
*/
public function testChooseType2()
{
$rest = new Rest();
$rest->allowedtypes = ["xml", "csv"];
$res = $rest->chooseType();
$this->assertSame($res, "xml");
}
/**
* Choose by the user specification : exact match
*/
public function testChooseType3()
{
$rest = new Rest();
$_SERVER["HTTP_ACCEPT"] = "text/html,application/xml;q=0.9,
*/*;q=0.8";
$res = $rest->chooseType();
$this->assertSame($res, "xml");
}
/**
* Choose by the user specification : generic match
*/
public function testChooseType4()
{
$rest = new Rest();
$_SERVER["HTTP_ACCEPT"] = "text/html;q=0.9,
*/*;q=0.8";
$res = $rest->chooseType();
$this->assertSame($res, "json");
}
/**
* Choose by the user specification : generic match with limited allowed
* types
*/
public function testChooseType5()
{
$rest = new Rest();
$rest->allowedtypes = ["xml", "csv"];
$_SERVER["HTTP_ACCEPT"] = "text/html;q=0.9,
*/*;q=0.8";
$res = $rest->chooseType();
$this->assertSame($res, "xml");
}
}