Vendoring deprecated composer libs
This commit is contained in:
25
libs/jsonrpc/tests/Response/HeaderMockTest.php
Normal file
25
libs/jsonrpc/tests/Response/HeaderMockTest.php
Normal file
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
namespace JsonRPC\Response;
|
||||
|
||||
use PHPUnit_Framework_TestCase;
|
||||
|
||||
require_once __DIR__.'/../../../../vendor/autoload.php';
|
||||
|
||||
function header($value)
|
||||
{
|
||||
HeaderMockTest::$functions->header($value);
|
||||
}
|
||||
|
||||
abstract class HeaderMockTest extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
public static $functions;
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
self::$functions = $this
|
||||
->getMockBuilder('stdClass')
|
||||
->setMethods(array('header'))
|
||||
->getMock();
|
||||
}
|
||||
}
|
||||
151
libs/jsonrpc/tests/Response/ResponseBuilderTest.php
Normal file
151
libs/jsonrpc/tests/Response/ResponseBuilderTest.php
Normal file
@@ -0,0 +1,151 @@
|
||||
<?php
|
||||
|
||||
use JsonRPC\Exception\AccessDeniedException;
|
||||
use JsonRPC\Exception\AuthenticationFailureException;
|
||||
use JsonRPC\Exception\InvalidJsonFormatException;
|
||||
use JsonRPC\Exception\InvalidJsonRpcFormatException;
|
||||
use JsonRPC\Exception\ResponseEncodingFailureException;
|
||||
use JsonRPC\Exception\ResponseException;
|
||||
use JsonRPC\Response\ResponseBuilder;
|
||||
|
||||
require_once __DIR__.'/../../../../vendor/autoload.php';
|
||||
|
||||
class ResponseBuilderTest extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
public function testBuildResponse()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","result":"test","id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithError()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withError(42, 'Test', 'More info')
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":42,"message":"Test","data":"More info"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new Exception('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":0,"message":"Test"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithResponseException()
|
||||
{
|
||||
$exception = new ResponseException('Error', 42);
|
||||
$exception->setData('Data');
|
||||
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException($exception)
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":42,"message":"Error","data":"Data"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithAccessDeniedException()
|
||||
{
|
||||
$responseBuilder = ResponseBuilder::create();
|
||||
$response = $responseBuilder
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new AccessDeniedException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":403,"message":"Forbidden"},"id":123}', $response);
|
||||
$this->assertEquals('HTTP/1.0 403 Forbidden', $responseBuilder->getStatus());
|
||||
|
||||
$this->assertEquals(
|
||||
array('Content-Type' => 'application/json'),
|
||||
$responseBuilder->getHeaders()
|
||||
);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithAuthenticationFailureException()
|
||||
{
|
||||
$responseBuilder = ResponseBuilder::create();
|
||||
$response = $responseBuilder
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new AuthenticationFailureException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":401,"message":"Unauthorized"},"id":123}', $response);
|
||||
$this->assertEquals('HTTP/1.0 401 Unauthorized', $responseBuilder->getStatus());
|
||||
|
||||
$this->assertEquals(
|
||||
array('Content-Type' => 'application/json', 'WWW-Authenticate' => 'Basic realm="JsonRPC"'),
|
||||
$responseBuilder->getHeaders()
|
||||
);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithResponseEncodingFailureException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new ResponseEncodingFailureException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":-32603,"message":"Internal error","data":"Test"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithInvalidArgumentException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new InvalidArgumentException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":-32602,"message":"Invalid params","data":"Test"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithBadFunctionCallException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new BadFunctionCallException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":-32601,"message":"Method not found"},"id":123}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithInvalidJsonRpcFormatException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new InvalidJsonRpcFormatException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":-32600,"message":"Invalid Request"},"id":null}', $response);
|
||||
}
|
||||
|
||||
public function testBuildResponseWithInvalidJsonFormatException()
|
||||
{
|
||||
$response = ResponseBuilder::create()
|
||||
->withId(123)
|
||||
->withResult('test')
|
||||
->withException(new InvalidJsonFormatException('Test'))
|
||||
->build();
|
||||
|
||||
$this->assertEquals('{"jsonrpc":"2.0","error":{"code":-32700,"message":"Parse error"},"id":null}', $response);
|
||||
}
|
||||
}
|
||||
100
libs/jsonrpc/tests/Response/ResponseParserTest.php
Normal file
100
libs/jsonrpc/tests/Response/ResponseParserTest.php
Normal file
@@ -0,0 +1,100 @@
|
||||
<?php
|
||||
|
||||
use JsonRPC\Response\ResponseParser;
|
||||
|
||||
require_once __DIR__.'/../../../../vendor/autoload.php';
|
||||
|
||||
class ResponseParserTest extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
public function testSingleRequest()
|
||||
{
|
||||
$result = ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "result": "foobar", "id": "1"}', true))
|
||||
->parse();
|
||||
|
||||
$this->assertEquals('foobar', $result);
|
||||
}
|
||||
|
||||
public function testWithBadJsonFormat()
|
||||
{
|
||||
$this->setExpectedException('\JsonRPC\Exception\InvalidJsonFormatException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload('foobar')
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testWithBadProcedure()
|
||||
{
|
||||
$this->setExpectedException('BadFunctionCallException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "error": {"code": -32601, "message": "Method not found"}, "id": "1"}', true))
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testWithInvalidArgs()
|
||||
{
|
||||
$this->setExpectedException('InvalidArgumentException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "error": {"code": -32602, "message": "Invalid params"}, "id": "1"}', true))
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testWithInvalidRequest()
|
||||
{
|
||||
$this->setExpectedException('\JsonRPC\Exception\InvalidJsonRpcFormatException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "error": {"code": -32600, "message": "Invalid Request"}, "id": null}', true))
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testWithParseError()
|
||||
{
|
||||
$this->setExpectedException('\JsonRPC\Exception\InvalidJsonFormatException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "error": {"code": -32700, "message": "Parse error"}, "id": null}', true))
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testWithOtherError()
|
||||
{
|
||||
$this->setExpectedException('\JsonRPC\Exception\ResponseException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode('{"jsonrpc": "2.0", "error": {"code": 42, "message": "Something", "data": "foobar"}, "id": null}', true))
|
||||
->parse();
|
||||
}
|
||||
|
||||
public function testBatch()
|
||||
{
|
||||
$payload = '[
|
||||
{"jsonrpc": "2.0", "result": 7, "id": "1"},
|
||||
{"jsonrpc": "2.0", "result": 19, "id": "2"}
|
||||
]';
|
||||
|
||||
$result = ResponseParser::create()
|
||||
->withPayload(json_decode($payload, true))
|
||||
->parse();
|
||||
|
||||
$this->assertEquals(array(7, 19), $result);
|
||||
}
|
||||
|
||||
public function testBatchWithError()
|
||||
{
|
||||
$payload = '[
|
||||
{"jsonrpc": "2.0", "result": 7, "id": "1"},
|
||||
{"jsonrpc": "2.0", "result": 19, "id": "2"},
|
||||
{"jsonrpc": "2.0", "error": {"code": -32602, "message": "Invalid params"}, "id": "1"}
|
||||
]';
|
||||
|
||||
$this->setExpectedException('InvalidArgumentException');
|
||||
|
||||
ResponseParser::create()
|
||||
->withPayload(json_decode($payload, true))
|
||||
->parse();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user