/home/lnzliplg/www/alt-php82-pecl-psr_1.2.0-1.el8.tar
tests/phpinfo.phpt 0000644 00000001110 15173145153 0010244 0 ustar 00 --TEST--
psr phpinfo
--SKIPIF--
<?php include('skip_lt_php72.inc'); ?>
--FILE--
<?php
phpinfo(INFO_MODULES);
--EXPECTF--
%A
psr
%A
Version => %s
Released => %s
Authors => %s
PSR-3 Log Version => %d.%d.%d
PSR-6 Cache Version => %d.%d.%d
PSR-7 Http Message Version => %d.%d.%d
PSR-11 Container Version => %d.%d.%d
PSR-13 Link Version => %d.%d.%d
PSR-14 Event Dispatcher => %d.%d.%d
PSR-15 HTTP Handlers (Server Handler) => %d.%d.%d
PSR-15 HTTP Handlers (Middleware) => %d.%d.%d
PSR-16 Simple Cache Version => %d.%d.%d
PSR-17 HTTP Factories => %d.%d.%d
PSR-18 HTTP Client => %d.%d.%d
%A
tests/PsrLogLoggerInterface.phpt 0000644 00000002730 15173145154 0013002 0 ustar 00 --TEST--
Psr\Log\LoggerInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleLogger.inc';
var_dump(interface_exists('\\Psr\\Log\\LoggerInterface', false));
var_dump(class_implements('SampleLogger', false));
$logger = new SampleLogger();
$logger->emergency('msg emergency', array(1));
$logger->alert('msg alert', array(2));
$logger->critical('msg critical', array(3));
$logger->error('msg error', array(4));
$logger->warning('msg warning', array(5));
$logger->notice('msg notice', array(6));
$logger->info('msg info', array(7));
$logger->debug('msg debug', array(8));
$logger->log('level', 'msg', array(9));
$logger->log('level', 'no context');
--EXPECT--
bool(true)
array(1) {
["PsrExt\Log\LoggerInterface"]=>
string(26) "PsrExt\Log\LoggerInterface"
}
string(9) "emergency"
string(13) "msg emergency"
array(1) {
[0]=>
int(1)
}
string(5) "alert"
string(9) "msg alert"
array(1) {
[0]=>
int(2)
}
string(8) "critical"
string(12) "msg critical"
array(1) {
[0]=>
int(3)
}
string(5) "error"
string(9) "msg error"
array(1) {
[0]=>
int(4)
}
string(7) "warning"
string(11) "msg warning"
array(1) {
[0]=>
int(5)
}
string(6) "notice"
string(10) "msg notice"
array(1) {
[0]=>
int(6)
}
string(4) "info"
string(8) "msg info"
array(1) {
[0]=>
int(7)
}
string(5) "debug"
string(9) "msg debug"
array(1) {
[0]=>
int(8)
}
string(5) "level"
string(3) "msg"
array(1) {
[0]=>
int(9)
}
string(5) "level"
string(10) "no context"
array(0) {
}
tests/PsrEventDispatcherListenerProviderInterface.phpt 0000644 00000001402 15173145154 0017425 0 ustar 00 --TEST--
Psr\EventDispatcher\ListenerProviderInterface
--SKIPIF--
<?php include('skip_lt_php72.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleListenerProvider.inc';
var_dump(interface_exists('\\Psr\\EventDispatcher\\ListenerProviderInterface', false));
var_dump(class_implements('SampleListenerProvider', false));
$provider = new SampleListenerProvider();
var_dump($provider instanceof SampleListenerProvider);
$event = new stdClass();
$return = $provider->getListenersForEvent($event);
var_dump(is_iterable($return));
--EXPECT--
bool(true)
array(1) {
["PsrExt\EventDispatcher\ListenerProviderInterface"]=>
string(48) "PsrExt\EventDispatcher\ListenerProviderInterface"
}
bool(true)
string(44) "SampleListenerProvider::getListenersForEvent"
bool(true)
bool(true)
tests/PsrHttpClientRequestExceptionInterface.phpt 0000644 00000002232 15173145155 0016425 0 ustar 00 --TEST--
Psr\Http\Client\RequestExceptionInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Http\Message\RequestInterface;
use Psr\Http\Client\RequestExceptionInterface;
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
var_dump(is_subclass_of(RequestExceptionInterface::class, Psr\Http\Client\ClientExceptionInterface::class));
var_dump(is_subclass_of(RequestExceptionInterface::class, Throwable::class));
class MyException extends Exception implements RequestExceptionInterface {
public function getRequest(): RequestInterface {
var_dump(__METHOD__);
return new SampleRequest();
}
}
$ex = new MyException('test');
var_dump($ex instanceof RequestExceptionInterface);
var_dump($ex instanceof Psr\Http\Client\ClientExceptionInterface);
var_dump($ex instanceof Exception);
var_dump($ex instanceof Throwable);
try {
throw $ex;
} catch( RequestExceptionInterface $e ) {
var_dump($e->getMessage());
var_dump($e->getRequest());
}
--EXPECTF--
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
string(4) "test"
string(23) "MyException::getRequest"
object(SampleRequest)#%d (0) {
}
tests/PsrHttpClientNetworkExceptionInterface.phpt 0000644 00000002232 15173145156 0016427 0 ustar 00 --TEST--
Psr\Http\Client\NetworkExceptionInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Http\Message\RequestInterface;
use Psr\Http\Client\NetworkExceptionInterface;
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
var_dump(is_subclass_of(NetworkExceptionInterface::class, Psr\Http\Client\ClientExceptionInterface::class));
var_dump(is_subclass_of(NetworkExceptionInterface::class, Throwable::class));
class MyException extends Exception implements NetworkExceptionInterface {
public function getRequest(): RequestInterface {
var_dump(__METHOD__);
return new SampleRequest();
}
}
$ex = new MyException('test');
var_dump($ex instanceof NetworkExceptionInterface);
var_dump($ex instanceof Psr\Http\Client\ClientExceptionInterface);
var_dump($ex instanceof Exception);
var_dump($ex instanceof Throwable);
try {
throw $ex;
} catch( NetworkExceptionInterface $e ) {
var_dump($e->getMessage());
var_dump($e->getRequest());
}
--EXPECTF--
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
string(4) "test"
string(23) "MyException::getRequest"
object(SampleRequest)#%d (0) {
}
tests/PsrCacheCacheItemInterface.phpt 0000644 00000001535 15173145157 0013674 0 ustar 00 --TEST--
Psr\Cache\CacheItemInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleCacheItem.inc';
var_dump(interface_exists('\\Psr\\Cache\\CacheItemInterface', false));
var_dump(class_implements('SampleCacheItem', false));
$cacheItem = new SampleCacheItem();
$cacheItem->getKey();
$cacheItem->get();
$cacheItem->isHit();
$cacheItem->set('test set');
$cacheItem->expiresAt(1435364259);
$cacheItem->expiresAfter(1435364259);
--EXPECT--
bool(true)
array(1) {
["PsrExt\Cache\CacheItemInterface"]=>
string(31) "PsrExt\Cache\CacheItemInterface"
}
string(23) "SampleCacheItem::getKey"
string(20) "SampleCacheItem::get"
string(22) "SampleCacheItem::isHit"
string(20) "SampleCacheItem::set"
string(8) "test set"
string(26) "SampleCacheItem::expiresAt"
int(1435364259)
string(29) "SampleCacheItem::expiresAfter"
int(1435364259)
tests/PsrHttpMessageServerRequestFactoryInterface.phpt 0000644 00000002263 15173145161 0017434 0 ustar 00 --TEST--
Psr\Http\Message\ServerRequestFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleUri.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleServerRequest.inc';
include __DIR__ . '/SampleServerRequestFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\ServerRequestFactoryInterface', false));
var_dump(class_implements('SampleServerRequestFactory', false));
$factory = new SampleServerRequestFactory();
$request = $factory->createServerRequest('GET', 'http://domain.com');
var_dump($request instanceof \Psr\Http\Message\ServerRequestInterface);
$request = $factory->createServerRequest('POST', new SampleUri(), ['param' => 'value']);
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Message\ServerRequestFactoryInterface"]=>
string(49) "PsrExt\Http\Message\ServerRequestFactoryInterface"
}
string(47) "SampleServerRequestFactory::createServerRequest"
string(3) "GET"
string(17) "http://domain.com"
array(0) {
}
bool(true)
string(47) "SampleServerRequestFactory::createServerRequest"
string(4) "POST"
object(SampleUri)#%d (0) {
}
array(1) {
["param"]=>
string(5) "value"
}
tests/PsrSimpleCacheCacheInterface.phpt 0000644 00000001157 15173145162 0014223 0 ustar 00 --TEST--
Psr\SimpleCache\CacheInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\SimpleCache\CacheInterface;
class MyImpl implements CacheInterface {
public function get($key, $default = null) {}
public function set($key, $value, $ttl = null) {}
public function delete($key) {}
public function clear() {}
public function getMultiple($keys, $default = null) {}
public function setMultiple($values, $ttl = null) {}
public function deleteMultiple($keys) {}
public function has($key) {}
}
$ex = new MyImpl();
var_dump($ex instanceof CacheInterface);
--EXPECT--
bool(true)
tests/PsrContainerContainerInterface.phpt 0000644 00000000534 15173145163 0014706 0 ustar 00 --TEST--
Psr\Container\ContainerInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Container\ContainerInterface;
class MyImpl implements ContainerInterface {
public function get(string $id) {}
public function has(string $id) {}
}
$ex = new MyImpl();
var_dump($ex instanceof ContainerInterface);
--EXPECT--
bool(true)
tests/PsrHttpMessageUploadedFileInterface.phpt 0000644 00000001672 15173145164 0015630 0 ustar 00 --TEST--
Psr\Http\Message\UploadedFileInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleUploadedFile.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\UploadedFileInterface', false));
var_dump(class_implements('SampleUploadedFile', false));
$uploadedFile = new SampleUploadedFile();
$uploadedFile->getStream();
$uploadedFile->moveTo('/dev/null');
$uploadedFile->getSize();
$uploadedFile->getError();
$uploadedFile->getClientFilename();
$uploadedFile->getClientMediaType();
--EXPECT--
bool(true)
array(1) {
["PsrExt\Http\Message\UploadedFileInterface"]=>
string(41) "PsrExt\Http\Message\UploadedFileInterface"
}
string(29) "SampleUploadedFile::getStream"
string(26) "SampleUploadedFile::moveTo"
string(9) "/dev/null"
string(27) "SampleUploadedFile::getSize"
string(28) "SampleUploadedFile::getError"
string(37) "SampleUploadedFile::getClientFilename"
string(38) "SampleUploadedFile::getClientMediaType"
tests/SampleUriFactory.inc 0000644 00000000436 15173145165 0011645 0 ustar 00 <?php
use Psr\Http\Message\UriFactoryInterface;
use Psr\Http\Message\UriInterface;
class SampleUriFactory implements UriFactoryInterface
{
public function createUri(string $uri = ''): UriInterface
{
var_dump(__METHOD__, $uri);
return new SampleUri();
}
}
tests/SampleMiddleware.inc 0000644 00000000660 15173145166 0011633 0 ustar 00 <?php
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Message\ResponseInterface;
class SampleMiddleware implements MiddlewareInterface {
public function process(ServerRequestInterface $reqeust, RequestHandlerInterface $handler): ResponseInterface
{
var_dump(__METHOD__);
return new SampleResponse();
}
}
tests/PsrHttpClientClientExceptionInterface.phpt 0000644 00000001162 15173145167 0016217 0 ustar 00 --TEST--
Psr\Http\Client\ClientExceptionInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Http\Client\ClientExceptionInterface;
var_dump(is_subclass_of(ClientExceptionInterface::class, Throwable::class));
class MyException extends Exception implements ClientExceptionInterface {}
$ex = new MyException('test');
var_dump($ex instanceof ClientExceptionInterface);
var_dump($ex instanceof Exception);
var_dump($ex instanceof Throwable);
try {
throw $ex;
} catch( ClientExceptionInterface $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
bool(true)
bool(true)
string(4) "test"
tests/PsrHttpMessageServerRequestInterface.phpt 0000644 00000005015 15173145170 0016102 0 ustar 00 --TEST--
Psr\Http\Message\ServerRequestInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleServerRequest.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\ServerRequestInterface', false));
var_dump(is_subclass_of('\\Psr\\Http\\Message\\ServerRequestInterface', '\\Psr\\Http\\Message\\MessageInterface'));
var_dump(is_subclass_of('\\Psr\\Http\\Message\\ServerRequestInterface', '\\Psr\\Http\\Message\\RequestInterface'));
$ifaces = class_implements('SampleServerRequest', false);
ksort($ifaces);
var_dump($ifaces);
$request = new SampleServerRequest();
var_dump($request instanceof \Psr\Http\Message\MessageInterface);
var_dump($request instanceof \Psr\Http\Message\RequestInterface);
$request->getServerParams();
$request->getCookieParams();
$request->withCookieParams(array('a' => 'b'));
$request->getQueryParams();
$request->withQueryParams(array('c' => 'd'));
$request->getUploadedFiles();
$request->withUploadedFiles(array());
$request->getParsedBody();
$request->withParsedBody('body');
$request->getAttributes();
$request->getAttribute('attr');
$request->getAttribute('attr', 'bar');
$request->withAttribute('foo', 'baz');
$request->withoutAttribute('bar');
--EXPECT--
bool(true)
bool(true)
bool(true)
array(3) {
["PsrExt\Http\Message\MessageInterface"]=>
string(36) "PsrExt\Http\Message\MessageInterface"
["PsrExt\Http\Message\RequestInterface"]=>
string(36) "PsrExt\Http\Message\RequestInterface"
["PsrExt\Http\Message\ServerRequestInterface"]=>
string(42) "PsrExt\Http\Message\ServerRequestInterface"
}
bool(true)
bool(true)
string(36) "SampleServerRequest::getServerParams"
string(36) "SampleServerRequest::getCookieParams"
string(37) "SampleServerRequest::withCookieParams"
array(1) {
["a"]=>
string(1) "b"
}
string(35) "SampleServerRequest::getQueryParams"
string(36) "SampleServerRequest::withQueryParams"
array(1) {
["c"]=>
string(1) "d"
}
string(37) "SampleServerRequest::getUploadedFiles"
string(38) "SampleServerRequest::withUploadedFiles"
array(0) {
}
string(34) "SampleServerRequest::getParsedBody"
string(35) "SampleServerRequest::withParsedBody"
string(4) "body"
string(34) "SampleServerRequest::getAttributes"
string(33) "SampleServerRequest::getAttribute"
string(4) "attr"
NULL
string(33) "SampleServerRequest::getAttribute"
string(4) "attr"
string(3) "bar"
string(34) "SampleServerRequest::withAttribute"
string(3) "foo"
string(3) "baz"
string(37) "SampleServerRequest::withoutAttribute"
string(3) "bar"
tests/phpinfo_lt_php72.phpt 0000644 00000001155 15173145171 0011774 0 ustar 00 --TEST--
psr phpinfo
--SKIPIF--
<?php
include('skip.inc');
if (PHP_VERSION_ID >= 70200) {
print "skip Due to version incompatibility";
}
?>
--FILE--
<?php
phpinfo(INFO_MODULES);
--EXPECTF--
%A
psr
%A
Version => %s
Released => %s
Authors => %s
PSR-3 Log Version => %d.%d.%d
PSR-6 Cache Version => %d.%d.%d
PSR-7 Http Message Version => %d.%d.%d
PSR-11 Container Version => %d.%d.%d
PSR-13 Link Version => %d.%d.%d
PSR-15 HTTP Handlers (Server Handler) => %d.%d.%d
PSR-15 HTTP Handlers (Middleware) => %d.%d.%d
PSR-16 Simple Cache Version => %d.%d.%d
PSR-17 HTTP Factories => %d.%d.%d
PSR-18 HTTP Client => %d.%d.%d
%A
tests/PsrEventDispatcherStoppableEventInterface.phpt 0000644 00000001271 15173145172 0017064 0 ustar 00 --TEST--
Psr\EventDispatcher\StoppableEventInterface
--SKIPIF--
<?php include('skip_lt_php72.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleStoppableEvent.inc';
var_dump(interface_exists('\\Psr\\EventDispatcher\\StoppableEventInterface', false));
var_dump(class_implements('SampleStoppableEvent', false));
$event = new SampleStoppableEvent();
var_dump($event instanceof SampleStoppableEvent);
$return = $event->isPropagationStopped();
var_dump(is_bool($return));
--EXPECT--
bool(true)
array(1) {
["PsrExt\EventDispatcher\StoppableEventInterface"]=>
string(46) "PsrExt\EventDispatcher\StoppableEventInterface"
}
bool(true)
string(42) "SampleStoppableEvent::isPropagationStopped"
bool(true)
tests/SampleLogger.inc 0000644 00000002443 15173145173 0010774 0 ustar 00 <?php
use Psr\Log\LogLevel;
use Psr\Log\LoggerInterface;
class SampleLogger implements LoggerInterface {
public function emergency($message, array $context = array()) {
return $this->log(LogLevel::EMERGENCY, $message, $context);
}
public function alert($message, array $context = array()) {
return $this->log(LogLevel::ALERT, $message, $context);
}
public function critical($message, array $context = array()) {
return $this->log(LogLevel::CRITICAL, $message, $context);
}
public function error($message, array $context = array()) {
return $this->log(LogLevel::ERROR, $message, $context);
}
public function warning($message, array $context = array()) {
return $this->log(LogLevel::WARNING, $message, $context);
}
public function notice($message, array $context = array()) {
return $this->log(LogLevel::NOTICE, $message, $context);
}
public function info($message, array $context = array()) {
return $this->log(LogLevel::INFO, $message, $context);
}
public function debug($message, array $context = array()) {
return $this->log(LogLevel::DEBUG, $message, $context);
}
public function log($level, $message, array $context = array()) {
var_dump($level, $message, $context);
}
}
tests/PsrLinkEvolvableLinkProviderInterface.phpt 0000644 00000001151 15173145174 0016205 0 ustar 00 --TEST--
Psr\Link\EvolvableLinkProviderInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Link\LinkInterface;
use Psr\Link\LinkProviderInterface;
use Psr\Link\EvolvableLinkProviderInterface;
class MyImpl implements EvolvableLinkProviderInterface {
public function getLinks() {}
public function getLinksByRel($rel) {}
public function withLink(LinkInterface $link) {}
public function withoutLink(LinkInterface $link) {}
}
$ex = new MyImpl();
var_dump($ex instanceof LinkProviderInterface);
var_dump($ex instanceof EvolvableLinkProviderInterface);
--EXPECT--
bool(true)
bool(true)
tests/PsrHttpMessageStreamFactoryInterface.phpt 0000644 00000002563 15173145175 0016060 0 ustar 00 --TEST--
Psr\Http\Message\StreamFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleStream.inc';
include __DIR__ . '/SampleStreamFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\StreamFactoryInterface', false));
var_dump(class_implements('SampleStreamFactory', false));
$factory = new SampleStreamFactory();
$stream = $factory->createStream();
var_dump($stream instanceof \Psr\Http\Message\StreamInterface);
$factory->createStream('content');
$stream = $factory->createStreamFromFile('/tmp/file1');
var_dump($stream instanceof \Psr\Http\Message\StreamInterface);
$factory->createStreamFromFile('/tmp/file2', 'wb');
$stream = $factory->createStreamFromResource(fopen('php://memory', 'r'));
var_dump($stream instanceof \Psr\Http\Message\StreamInterface);
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Message\StreamFactoryInterface"]=>
string(42) "PsrExt\Http\Message\StreamFactoryInterface"
}
string(33) "SampleStreamFactory::createStream"
string(0) ""
bool(true)
string(33) "SampleStreamFactory::createStream"
string(7) "content"
string(41) "SampleStreamFactory::createStreamFromFile"
string(10) "/tmp/file1"
string(1) "r"
bool(true)
string(41) "SampleStreamFactory::createStreamFromFile"
string(10) "/tmp/file2"
string(2) "wb"
string(45) "SampleStreamFactory::createStreamFromResource"
resource(%d) of type (stream)
bool(true)
tests/SampleLoggerAware.inc 0000644 00000000571 15173145176 0011757 0 ustar 00 <?php
use Psr\Log\LoggerInterface;
use Psr\Log\LoggerAwareInterface;
class SampleLoggerAware implements LoggerAwareInterface {
private $logger;
public function setLogger(LoggerInterface $logger) {
$this->logger = $logger;
var_dump('got logger');
}
public function doSomethingThatLogs() {
$this->logger->emergency('test log');
}
}
tests/PsrContainerContainerExceptionInterface.phpt 0000644 00000000766 15173145176 0016600 0 ustar 00 --TEST--
Psr\Container\ContainerExceptionInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Container\ContainerExceptionInterface;
class MyException extends Exception implements ContainerExceptionInterface {}
$ex = new MyException('test');
var_dump($ex instanceof ContainerExceptionInterface);
var_dump($ex instanceof Exception);
try {
throw $ex;
} catch( ContainerExceptionInterface $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
string(4) "test"
tests/SampleStoppableEvent.inc 0000644 00000000354 15173145177 0012513 0 ustar 00 <?php
use Psr\EventDispatcher\StoppableEventInterface;
class SampleStoppableEvent implements StoppableEventInterface
{
public function isPropagationStopped(): bool
{
var_dump(__METHOD__);
return true;
}
}
tests/PsrLogAbstractLogger.phpt 0000644 00000002374 15173145177 0012656 0 ustar 00 --TEST--
Psr\Log\AbstractLogger
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleLogger2.inc';
$logger = new SampleLogger2;
$logger->emergency('msg emergency', array(1));
$logger->alert('msg alert', array(2));
$logger->critical('msg critical', array(3));
$logger->error('msg error', array(4));
$logger->warning('msg warning', array(5));
$logger->notice('msg notice', array(6));
$logger->info('msg info', array(7));
$logger->debug('msg debug', array(8));
$logger->log('level', 'msg', array(9));
$logger->log('level', 'no context');
--EXPECT--
string(9) "emergency"
string(13) "msg emergency"
array(1) {
[0]=>
int(1)
}
string(5) "alert"
string(9) "msg alert"
array(1) {
[0]=>
int(2)
}
string(8) "critical"
string(12) "msg critical"
array(1) {
[0]=>
int(3)
}
string(5) "error"
string(9) "msg error"
array(1) {
[0]=>
int(4)
}
string(7) "warning"
string(11) "msg warning"
array(1) {
[0]=>
int(5)
}
string(6) "notice"
string(10) "msg notice"
array(1) {
[0]=>
int(6)
}
string(4) "info"
string(8) "msg info"
array(1) {
[0]=>
int(7)
}
string(5) "debug"
string(9) "msg debug"
array(1) {
[0]=>
int(8)
}
string(5) "level"
string(3) "msg"
array(1) {
[0]=>
int(9)
}
string(5) "level"
string(10) "no context"
array(0) {
}
tests/PsrLogLoggerTrait.phpt 0000644 00000003102 15173145177 0012164 0 ustar 00 --TEST--
Psr\Log\LoggerTrait
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\LoggerTrait;
include __DIR__ . '/SampleLogger.inc';
class SampleLoggerTraitUser {
use LoggerTrait;
public function log($level, $message, array $context = array()) {
var_dump($level, $message, $context);
}
}
$logger = new SampleLoggerTraitUser();
$logger->emergency('msg emergency', array(1));
$logger->alert('msg alert', array(2));
$logger->critical('msg critical', array(3));
$logger->error('msg error', array(4));
$logger->warning('msg warning', array(5));
$logger->notice('msg notice', array(6));
$logger->info('msg info', array(7));
$logger->debug('msg debug', array(8));
$logger->log('level', 'msg', array(9));
$logger->log('level', 'no context');
var_dump(class_uses($logger, false));
--EXPECT--
string(9) "emergency"
string(13) "msg emergency"
array(1) {
[0]=>
int(1)
}
string(5) "alert"
string(9) "msg alert"
array(1) {
[0]=>
int(2)
}
string(8) "critical"
string(12) "msg critical"
array(1) {
[0]=>
int(3)
}
string(5) "error"
string(9) "msg error"
array(1) {
[0]=>
int(4)
}
string(7) "warning"
string(11) "msg warning"
array(1) {
[0]=>
int(5)
}
string(6) "notice"
string(10) "msg notice"
array(1) {
[0]=>
int(6)
}
string(4) "info"
string(8) "msg info"
array(1) {
[0]=>
int(7)
}
string(5) "debug"
string(9) "msg debug"
array(1) {
[0]=>
int(8)
}
string(5) "level"
string(3) "msg"
array(1) {
[0]=>
int(9)
}
string(5) "level"
string(10) "no context"
array(0) {
}
array(1) {
["PsrExt\Log\LoggerTrait"]=>
string(22) "PsrExt\Log\LoggerTrait"
}
tests/SampleCacheItem.inc 0000644 00000001105 15173145200 0011360 0 ustar 00 <?php
use Psr\Cache\CacheItemInterface;
class SampleCacheItem implements CacheItemInterface
{
public function getKey()
{
var_dump(__METHOD__);
}
public function get()
{
var_dump(__METHOD__);
}
public function isHit()
{
var_dump(__METHOD__);
}
public function set($value)
{
var_dump(__METHOD__, $value);
}
public function expiresAt($expiration)
{
var_dump(__METHOD__, $expiration);
}
public function expiresAfter($time)
{
var_dump(__METHOD__, $time);
}
}
tests/SampleServerRequestFactory.inc 0000644 00000000632 15173145200 0013711 0 ustar 00 <?php
use Psr\Http\Message\ServerRequestFactoryInterface;
use Psr\Http\Message\ServerRequestInterface;
class SampleServerRequestFactory implements ServerRequestFactoryInterface
{
public function createServerRequest(string $method, $uri, array $serverParams = []): ServerRequestInterface
{
var_dump(__METHOD__, $method, $uri, $serverParams);
return new SampleServerRequest();
}
}
tests/PsrHttpMessageResponseInterface.phpt 0000644 00000002013 15173145200 0015046 0 ustar 00 --TEST--
Psr\Http\Message\ResponseInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleResponse.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\ResponseInterface', false));
var_dump(is_subclass_of('\\Psr\\Http\\Message\\ResponseInterface', '\\Psr\\Http\\Message\\MessageInterface'));
var_dump(class_implements('SampleResponse', false));
$request = new SampleResponse();
var_dump($request instanceof \Psr\Http\Message\MessageInterface);
$request->getStatusCode();
$request->withStatus(400, 'BAD REQUEST');
$request->getReasonPhrase();
--EXPECT--
bool(true)
bool(true)
array(2) {
["PsrExt\Http\Message\MessageInterface"]=>
string(36) "PsrExt\Http\Message\MessageInterface"
["PsrExt\Http\Message\ResponseInterface"]=>
string(37) "PsrExt\Http\Message\ResponseInterface"
}
bool(true)
string(29) "SampleResponse::getStatusCode"
string(26) "SampleResponse::withStatus"
int(400)
string(11) "BAD REQUEST"
string(31) "SampleResponse::getReasonPhrase"
tests/PsrHttpServerMiddlewareInterface.phpt 0000644 00000002071 15173145201 0015214 0 ustar 00 --TEST--
Psr\Http\Server\MiddlewareInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleServerRequest.inc';
include __DIR__ . '/SampleResponse.inc';
include __DIR__ . '/SampleRequestHandler.inc';
include __DIR__ . '/SampleMiddleware.inc';
var_dump(interface_exists('\\Psr\\Http\\Server\\MiddlewareInterface', false));
var_dump(class_implements('SampleMiddleware', false));
$request = new SampleServerRequest();
var_dump($request instanceof \Psr\Http\Message\ServerRequestInterface);
$handler = new SampleRequestHandler();
var_dump($handler instanceof \Psr\Http\Server\RequestHandlerInterface);
$middleware = new SampleMiddleware();
$response = $middleware->process($request, $handler);
var_dump($response instanceof \Psr\Http\Message\ResponseInterface);
--EXPECT--
bool(true)
array(1) {
["PsrExt\Http\Server\MiddlewareInterface"]=>
string(38) "PsrExt\Http\Server\MiddlewareInterface"
}
bool(true)
bool(true)
string(25) "SampleMiddleware::process"
bool(true)
tests/skip_lt_php72.inc 0000644 00000000153 15173145201 0011064 0 ustar 00 <?php
include 'skip.inc';
if (PHP_VERSION_ID < 70200) {
print "skip Due to version incompatibility";
}
tests/PsrCacheInvalidArgumentException.phpt 0000644 00000001117 15173145202 0015164 0 ustar 00 --TEST--
Psr\Cache\InvalidArgumentException
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Cache\CacheException;
use Psr\Cache\InvalidArgumentException;
class MyInvalidArgumentException extends Exception implements InvalidArgumentException {}
$ex = new MyInvalidArgumentException('test');
var_dump($ex instanceof InvalidArgumentException);
var_dump($ex instanceof Exception);
var_dump($ex instanceof CacheException);
try {
throw $ex;
} catch( InvalidArgumentException $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
bool(true)
string(4) "test"
tests/PsrCacheCacheException.phpt 0000644 00000000667 15173145203 0013110 0 ustar 00 --TEST--
Psr\Cache\CacheException
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Cache\CacheException;
class MyCacheException extends Exception implements CacheException {}
$ex = new MyCacheException('test');
var_dump($ex instanceof CacheException);
var_dump($ex instanceof Exception);
try {
throw $ex;
} catch( CacheException $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
string(4) "test"
tests/PsrLinkEvolvableLinkInterface.phpt 0000644 00000001322 15173145204 0014464 0 ustar 00 --TEST--
Psr\Link\EvolvableLinkInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Link\LinkInterface;
use Psr\Link\EvolvableLinkInterface;
class MyImpl implements EvolvableLinkInterface {
public function getHref() {}
public function isTemplated() {}
public function getRels() {}
public function getAttributes() {}
public function withHref($href) {}
public function withRel($rel) {}
public function withoutRel($rel) {}
public function withAttribute($attribute, $value) {}
public function withoutAttribute($attribute) {}
}
$ex = new MyImpl();
var_dump($ex instanceof LinkInterface);
var_dump($ex instanceof EvolvableLinkInterface);
--EXPECT--
bool(true)
bool(true)
tests/PsrHttpMessageUriInterface.phpt 0000644 00000002517 15173145205 0014025 0 ustar 00 --TEST--
Psr\Http\Message\UriInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Http\Message\UriInterface;
include __DIR__ . '/SampleUri.inc';
var_dump(interface_exists(UriInterface::class, false));
var_dump(is_subclass_of(SampleUri::class, UriInterface::class));
$uri = new SampleUri();
$uri->getScheme();
$uri->getAuthority();
$uri->getUserInfo();
$uri->getHost();
$uri->getPort();
$uri->getPath();
$uri->getQuery();
$uri->getFragment();
$uri->withScheme('http');
$uri->withUserInfo('foo', 'bar');
$uri->withHost('php.net');
$uri->withPort(8080);
$uri->withPath('/');
$uri->withQuery('');
$uri->withFragment('');
$uri->__toString();
--EXPECT--
bool(true)
bool(true)
string(20) "SampleUri::getScheme"
string(23) "SampleUri::getAuthority"
string(22) "SampleUri::getUserInfo"
string(18) "SampleUri::getHost"
string(18) "SampleUri::getPort"
string(18) "SampleUri::getPath"
string(19) "SampleUri::getQuery"
string(22) "SampleUri::getFragment"
string(21) "SampleUri::withScheme"
string(4) "http"
string(23) "SampleUri::withUserInfo"
string(3) "foo"
string(3) "bar"
string(19) "SampleUri::withHost"
string(7) "php.net"
string(19) "SampleUri::withPort"
int(8080)
string(19) "SampleUri::withPath"
string(1) "/"
string(20) "SampleUri::withQuery"
string(0) ""
string(23) "SampleUri::withFragment"
string(0) ""
string(21) "SampleUri::__toString"
tests/PsrLogLoggerAwareTrait.phpt 0000644 00000001114 15173145206 0013136 0 ustar 00 --TEST--
Psr\Log\LoggerAwareTrait
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\LoggerAwareTrait;
include __DIR__ . '/SampleLogger.inc';
class SampleLoggerAwareTraitUser {
use LoggerAwareTrait;
public function getLogger() {
return $this->logger;
}
}
$aware = new SampleLoggerAwareTraitUser();
$logger = new SampleLogger();
$aware->setLogger($logger);
var_dump($logger === $aware->getLogger());
var_dump(class_uses($aware, false));
--EXPECT--
bool(true)
array(1) {
["PsrExt\Log\LoggerAwareTrait"]=>
string(27) "PsrExt\Log\LoggerAwareTrait"
}
tests/PsrSimpleCacheCacheException.phpt 0000644 00000000671 15173145207 0014261 0 ustar 00 --TEST--
Psr\SimpleCache\CacheException
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\SimpleCache\CacheException;
class MyException extends Exception implements CacheException {}
$ex = new MyException('test');
var_dump($ex instanceof CacheException);
var_dump($ex instanceof Exception);
try {
throw $ex;
} catch( CacheException $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
string(4) "test"
tests/gh78_php7.phpt 0000644 00000001211 15173145210 0010310 0 ustar 00 --TEST--
Psr\Log\LoggerInterface - Invalid context default value (PHP 7)
--SKIPIF--
<?php
include 'skip.inc';
if (PHP_VERSION_ID >= 80000) {
print "skip Due to version incompatibility";
}
?>
--FILE--
<?php
$reflectionMethod = new \ReflectionMethod(\Psr\Log\LoggerInterface::class, "emergency");
$reflectionParameter = $reflectionMethod->getParameters()[1];
var_dump($reflectionParameter->isOptional());
var_dump($reflectionParameter->isDefaultValueAvailable());
var_dump($reflectionParameter->getDefaultValue());
--EXPECT--
bool(true)
bool(true)
array(0) {
}
--XFAIL--
PHP 7 internal functions cannot have default values reported via reflection
tests/PsrHttpMessageUriFactoryInterface.phpt 0000644 00000001364 15173145211 0015351 0 ustar 00 --TEST--
Psr\Http\Message\UriFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleUri.inc';
include __DIR__ . '/SampleUriFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\UriFactoryInterface', false));
var_dump(class_implements('SampleUriFactory', false));
$factory = new SampleUriFactory();
$uri = $factory->createUri();
var_dump($uri instanceof \Psr\Http\Message\UriInterface);
$factory->createUri('http://domain.com');
--EXPECT--
bool(true)
array(1) {
["PsrExt\Http\Message\UriFactoryInterface"]=>
string(39) "PsrExt\Http\Message\UriFactoryInterface"
}
string(27) "SampleUriFactory::createUri"
string(0) ""
bool(true)
string(27) "SampleUriFactory::createUri"
string(17) "http://domain.com"
tests/SampleUri.inc 0000644 00000002637 15173145211 0010312 0 ustar 00 <?php
use Psr\Http\Message\UriInterface;
class SampleUri implements UriInterface
{
public function getScheme()
{
var_dump(__METHOD__);
}
public function getAuthority()
{
var_dump(__METHOD__);
}
public function getUserInfo()
{
var_dump(__METHOD__);
}
public function getHost()
{
var_dump(__METHOD__);
}
public function getPort()
{
var_dump(__METHOD__);
}
public function getPath()
{
var_dump(__METHOD__);
}
public function getQuery()
{
var_dump(__METHOD__);
}
public function getFragment()
{
var_dump(__METHOD__);
}
public function withScheme($scheme)
{
var_dump(__METHOD__, $scheme);
}
public function withUserInfo($user, $password = null)
{
var_dump(__METHOD__, $user, $password);
}
public function withHost($host)
{
var_dump(__METHOD__, $host);
}
public function withPort($port)
{
var_dump(__METHOD__, $port);
}
public function withPath($path)
{
var_dump(__METHOD__, $path);
}
public function withQuery($query)
{
var_dump(__METHOD__, $query);
}
public function withFragment($fragment)
{
var_dump(__METHOD__, $fragment);
}
public function __toString()
{
var_dump(__METHOD__);
return '';
}
}
tests/PsrEventDispatcherEventDispatcherInterface.phpt 0000644 00000001345 15173145212 0017216 0 ustar 00 --TEST--
Psr\EventDispatcher\EventDispatcherInterface
--SKIPIF--
<?php include('skip_lt_php72.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleEventDispatcher.inc';
var_dump(interface_exists('\\Psr\\EventDispatcher\\EventDispatcherInterface', false));
var_dump(class_implements('SampleEventDispatcher', false));
$dispatcher = new SampleEventDispatcher();
var_dump($dispatcher instanceof SampleEventDispatcher);
$event = new stdClass();
$return = $dispatcher->dispatch($event);
var_dump(is_object($return));
--EXPECT--
bool(true)
array(1) {
["PsrExt\EventDispatcher\EventDispatcherInterface"]=>
string(47) "PsrExt\EventDispatcher\EventDispatcherInterface"
}
bool(true)
string(31) "SampleEventDispatcher::dispatch"
bool(true)
bool(true)
tests/SampleStream.inc 0000644 00000002441 15173145213 0011001 0 ustar 00 <?php
use Psr\Http\Message\StreamInterface;
class SampleStream implements StreamInterface
{
public function __toString()
{
var_dump(__METHOD__);
return __METHOD__;
}
public function close()
{
var_dump(__METHOD__);
}
public function detach()
{
var_dump(__METHOD__);
}
public function getSize()
{
var_dump(__METHOD__);
}
public function tell()
{
var_dump(__METHOD__);
}
public function eof()
{
var_dump(__METHOD__);
}
public function isSeekable()
{
var_dump(__METHOD__);
}
public function seek($offset, $whence = SEEK_SET)
{
var_dump(__METHOD__, $offset, $whence);
}
public function rewind()
{
var_dump(__METHOD__);
}
public function isWritable()
{
var_dump(__METHOD__);
}
public function write($string)
{
var_dump(__METHOD__, $string);
}
public function isReadable()
{
var_dump(__METHOD__);
}
public function read($length)
{
var_dump(__METHOD__, $length);
}
public function getContents()
{
var_dump(__METHOD__);
}
public function getMetadata($key = null)
{
var_dump(__METHOD__, $key);
}
}
tests/SampleLogger2.inc 0000644 00000000335 15173145213 0011047 0 ustar 00 <?php
use Psr\Log\LogLevel;
use Psr\Log\AbstractLogger;
class SampleLogger2 extends AbstractLogger {
public function log($level, $message, array $context = array()) {
var_dump($level, $message, $context);
}
}
tests/SampleCacheItemPool.inc 0000644 00000001662 15173145214 0012227 0 ustar 00 <?php
use Psr\Cache\CacheItemInterface;
use Psr\Cache\CacheItemPoolInterface;
class SampleCacheItemPool implements CacheItemPoolInterface
{
public function getItem($key)
{
var_dump(__METHOD__, $key);
}
public function getItems(array $keys = array())
{
var_dump(__METHOD__, $keys);
}
public function hasItem($key)
{
var_dump(__METHOD__, $key);
}
public function clear()
{
var_dump(__METHOD__);
}
public function deleteItem($key)
{
var_dump(__METHOD__, $key);
}
public function deleteItems(array $keys)
{
var_dump(__METHOD__, $keys);
}
public function save(CacheItemInterface $item)
{
var_dump(__METHOD__, $item);
}
public function saveDeferred(CacheItemInterface $item)
{
var_dump(__METHOD__, $item);
}
public function commit()
{
var_dump(__METHOD__);
}
}
tests/PsrLogLoggerAwareInterface.phpt 0000644 00000001165 15173145215 0013761 0 ustar 00 --TEST--
Psr\Log\LoggerAwareInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleLogger.inc';
include __DIR__ . '/SampleLoggerAware.inc';
var_dump(interface_exists('\\Psr\\Log\\LoggerAwareInterface', false));
var_dump(class_implements('SampleLoggerAware', false));
$aware = new SampleLoggerAware();
$logger = new SampleLogger();
$aware->setLogger($logger);
$aware->doSomethingThatLogs();
--EXPECT--
bool(true)
array(1) {
["PsrExt\Log\LoggerAwareInterface"]=>
string(31) "PsrExt\Log\LoggerAwareInterface"
}
string(10) "got logger"
string(9) "emergency"
string(8) "test log"
array(0) {
}
tests/PsrLogInvalidArgumentException.phpt 0000644 00000000637 15173145215 0014714 0 ustar 00 --TEST--
Psr\Log\InvalidArgumentException
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\InvalidArgumentException;
$ex = new InvalidArgumentException('test');
var_dump($ex instanceof \InvalidArgumentException);
var_dump($ex instanceof \Exception);
try {
throw $ex;
} catch( InvalidArgumentException $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
string(4) "test"
tests/SampleMessage.inc 0000644 00000002170 15173145216 0011134 0 ustar 00 <?php
use Psr\Http\Message\MessageInterface;
use Psr\Http\Message\StreamInterface;
class SampleMessage implements MessageInterface
{
public function getProtocolVersion()
{
var_dump(__METHOD__);
}
public function withProtocolVersion($version)
{
var_dump(__METHOD__, $version);
}
public function getHeaders()
{
var_dump(__METHOD__);
}
public function hasHeader($name)
{
var_dump(__METHOD__, $name);
}
public function getHeader($name)
{
var_dump(__METHOD__, $name);
}
public function getHeaderLine($name)
{
var_dump(__METHOD__, $name);
}
public function withHeader($name, $value)
{
var_dump(__METHOD__, $name, $value);
}
public function withAddedHeader($name, $value)
{
var_dump(__METHOD__, $name, $value);
}
public function withoutHeader($name)
{
var_dump(__METHOD__, $name);
}
public function getBody()
{
var_dump(__METHOD__);
}
public function withBody(StreamInterface $body)
{
var_dump(__METHOD__, $body);
}
}
tests/SampleServerRequest.inc 0000644 00000002515 15173145217 0012373 0 ustar 00 <?php
use Psr\Http\Message\ServerRequestInterface;
class SampleServerRequest extends SampleRequest implements ServerRequestInterface
{
public function getServerParams()
{
var_dump(__METHOD__);
}
public function getCookieParams()
{
var_dump(__METHOD__);
}
public function withCookieParams(array $cookies)
{
var_dump(__METHOD__, $cookies);
}
public function getQueryParams()
{
var_dump(__METHOD__);
}
public function withQueryParams(array $query)
{
var_dump(__METHOD__, $query);
}
public function getUploadedFiles()
{
var_dump(__METHOD__);
}
public function withUploadedFiles(array $uploadedFiles)
{
var_dump(__METHOD__, $uploadedFiles);
}
public function getParsedBody()
{
var_dump(__METHOD__);
}
public function withParsedBody($data)
{
var_dump(__METHOD__, $data);
}
public function getAttributes()
{
var_dump(__METHOD__);
}
public function getAttribute($name, $default = null)
{
var_dump(__METHOD__, $name, $default);
}
public function withAttribute($name, $value)
{
var_dump(__METHOD__, $name, $value);
}
public function withoutAttribute($name)
{
var_dump(__METHOD__, $name);
}
}
tests/SampleEventDispatcher.inc 0000644 00000000377 15173145220 0012642 0 ustar 00 <?php
use Psr\EventDispatcher\EventDispatcherInterface;
class SampleEventDispatcher implements EventDispatcherInterface
{
public function dispatch(object $event)
{
var_dump(__METHOD__, is_object($event));
return $event;
}
}
tests/SampleStreamFactory.inc 0000644 00000001235 15173145221 0012330 0 ustar 00 <?php
use Psr\Http\Message\StreamFactoryInterface;
use Psr\Http\Message\StreamInterface;
class SampleStreamFactory implements StreamFactoryInterface
{
public function createStream(string $content = ''): StreamInterface
{
var_dump(__METHOD__, $content);
return new SampleStream();
}
public function createStreamFromFile(string $filename, string $mode = 'r'): StreamInterface
{
var_dump(__METHOD__, $filename, $mode);
return new SampleStream();
}
public function createStreamFromResource($resource): StreamInterface
{
var_dump(__METHOD__, $resource);
return new SampleStream();
}
}
tests/PsrHttpMessageStreamInterface.phpt 0000644 00000002341 15173145223 0014514 0 ustar 00 --TEST--
Psr\Http\Message\StreamInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Http\Message\StreamInterface;
include __DIR__ . '/SampleStream.inc';
var_dump(interface_exists(StreamInterface::class, false));
var_dump(is_subclass_of(SampleStream::class, StreamInterface::class));
$stream = new SampleStream();
$stream->__toString();
$stream->close();
$stream->detach();
$stream->getSize();
$stream->tell();
$stream->eof();
$stream->isSeekable();
$stream->seek(0);
$stream->rewind();
$stream->isWritable();
$stream->write('foo');
$stream->isReadable();
$stream->read(123);
$stream->getContents();
$stream->getMetadata();
--EXPECTF--
bool(true)
bool(true)
string(24) "SampleStream::__toString"
string(19) "SampleStream::close"
string(20) "SampleStream::detach"
string(21) "SampleStream::getSize"
string(18) "SampleStream::tell"
string(17) "SampleStream::eof"
string(24) "SampleStream::isSeekable"
string(18) "SampleStream::seek"
int(0)
int(0)
string(20) "SampleStream::rewind"
string(24) "SampleStream::isWritable"
string(19) "SampleStream::write"
string(3) "foo"
string(24) "SampleStream::isReadable"
string(18) "SampleStream::read"
int(123)
string(25) "SampleStream::getContents"
string(25) "SampleStream::getMetadata"
NULL
tests/SampleResponse.inc 0000644 00000000630 15173145224 0011344 0 ustar 00 <?php
use Psr\Http\Message\ResponseInterface;
class SampleResponse extends SampleMessage implements ResponseInterface
{
public function getStatusCode()
{
var_dump(__METHOD__);
}
public function withStatus($code, $reasonPhrase = '')
{
var_dump(__METHOD__, $code, $reasonPhrase);
}
public function getReasonPhrase()
{
var_dump(__METHOD__);
}
}
tests/PsrHttpClientClientInterface.phpt 0000644 00000001401 15173145225 0014327 0 ustar 00 --TEST--
Psr\Http\Client\ClientInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleResponse.inc';
include __DIR__ . '/SampleClient.inc';
var_dump(interface_exists('\\Psr\\Http\\Client\\ClientInterface', false));
var_dump(class_implements('SampleClient', false));
$client = new SampleClient();
$request = new SampleRequest();
$response = $client->sendRequest($request);
var_dump($response instanceof \Psr\Http\Message\ResponseInterface);
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Client\ClientInterface"]=>
string(34) "PsrExt\Http\Client\ClientInterface"
}
string(25) "SampleClient::sendRequest"
object(SampleRequest)#%d (0) {
}
bool(true)
tests/PsrHttpMessageRequestFactoryInterface.phpt 0000644 00000001724 15173145227 0016251 0 ustar 00 --TEST--
Psr\Http\Message\RequestFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleUri.inc';
include __DIR__ . '/SampleRequestFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\RequestFactoryInterface', false));
var_dump(class_implements('SampleRequestFactory', false));
$factory = new SampleRequestFactory();
$request = $factory->createRequest('GET', 'http://domain.com');
var_dump($request instanceof \Psr\Http\Message\RequestInterface);
$factory->createRequest('POST', new SampleUri());
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Message\RequestFactoryInterface"]=>
string(43) "PsrExt\Http\Message\RequestFactoryInterface"
}
string(35) "SampleRequestFactory::createRequest"
string(3) "GET"
string(17) "http://domain.com"
bool(true)
string(35) "SampleRequestFactory::createRequest"
string(4) "POST"
object(SampleUri)#%d (0) {
}
tests/SampleRequest.inc 0000644 00000001324 15173145230 0011174 0 ustar 00 <?php
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\UriInterface;
class SampleRequest extends SampleMessage implements RequestInterface
{
public function getRequestTarget()
{
var_dump(__METHOD__);
}
public function withRequestTarget($requestTarget)
{
var_dump(__METHOD__, $requestTarget);
}
public function getMethod()
{
var_dump(__METHOD__);
}
public function withMethod($method)
{
var_dump(__METHOD__, $method);
}
public function getUri()
{
var_dump(__METHOD__);
}
public function withUri(UriInterface $uri, $preserveHost = false)
{
var_dump(__METHOD__, $uri, $preserveHost);
}
}
tests/PsrSimpleCacheInvalidArgumentException.phpt 0000644 00000000753 15173145231 0016345 0 ustar 00 --TEST--
Psr\SimpleCache\InvalidArgumentException
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\SimpleCache\InvalidArgumentException;
class MyException extends Exception implements InvalidArgumentException {}
$ex = new MyException('test');
var_dump($ex instanceof InvalidArgumentException);
var_dump($ex instanceof Exception);
try {
throw $ex;
} catch( InvalidArgumentException $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
string(4) "test"
tests/SampleRequestHandler.inc 0000644 00000000554 15173145232 0012500 0 ustar 00 <?php
use Psr\Http\Server\RequestHandlerInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Message\ResponseInterface;
class SampleRequestHandler implements RequestHandlerInterface {
public function handle(ServerRequestInterface $reqeust): ResponseInterface
{
var_dump(__METHOD__);
return new SampleResponse();
}
}
tests/skip.inc 0000644 00000000131 15173145233 0007346 0 ustar 00 <?php
if (!extension_loaded("psr")) {
die('skip The psr extension is not loaded');
}
tests/PsrLogNullLogger.phpt 0000644 00000001253 15173145233 0012011 0 ustar 00 --TEST--
Psr\Log\NullLogger
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\NullLogger;
$logger = new NullLogger;
$logger->emergency('msg emergency', array(1));
$logger->alert('msg alert', array(2));
$logger->critical('msg critical', array(3));
$logger->error('msg error', array(4));
$logger->warning('msg warning', array(5));
$logger->notice('msg notice', array(6));
$logger->info('msg info', array(7));
$logger->debug('msg debug', array(8));
$logger->log('level', 'msg', array(9));
$logger->log('level', 'no context');
var_dump($logger instanceof \Psr\Log\LoggerInterface);
var_dump($logger instanceof \Psr\Log\AbstractLogger);
--EXPECT--
bool(true)
bool(true)
tests/PsrCacheCacheItemPoolInterface.phpt 0000644 00000002717 15173145234 0014525 0 ustar 00 --TEST--
Psr\Cache\CacheItemPoolInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleCacheItem.inc';
include __DIR__ . '/SampleCacheItemPool.inc';
var_dump(interface_exists('\\Psr\\Cache\\CacheItemPoolInterface', false));
var_dump(class_implements('SampleCacheItemPool', false));
$cacheItem = new SampleCacheItemPool();
$cacheItem->getItem('key');
$cacheItem->getItems();
$cacheItem->getItems(array('keyA', 'keyB'));
$cacheItem->hasItem('key');
$cacheItem->clear();
$cacheItem->deleteItem('keyC');
$cacheItem->deleteItems(array('keyC'));
$cacheItem->save(new SampleCacheItem());
$cacheItem->saveDeferred(new SampleCacheItem());
$cacheItem->commit();
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Cache\CacheItemPoolInterface"]=>
string(35) "PsrExt\Cache\CacheItemPoolInterface"
}
string(28) "SampleCacheItemPool::getItem"
string(3) "key"
string(29) "SampleCacheItemPool::getItems"
array(0) {
}
string(29) "SampleCacheItemPool::getItems"
array(2) {
[0]=>
string(4) "keyA"
[1]=>
string(4) "keyB"
}
string(28) "SampleCacheItemPool::hasItem"
string(3) "key"
string(26) "SampleCacheItemPool::clear"
string(31) "SampleCacheItemPool::deleteItem"
string(4) "keyC"
string(32) "SampleCacheItemPool::deleteItems"
array(1) {
[0]=>
string(4) "keyC"
}
string(25) "SampleCacheItemPool::save"
object(SampleCacheItem)#%d (0) {
}
string(33) "SampleCacheItemPool::saveDeferred"
object(SampleCacheItem)#%d (0) {
}
string(27) "SampleCacheItemPool::commit"
tests/SampleResponseFactory.inc 0000644 00000000553 15173145235 0012702 0 ustar 00 <?php
use Psr\Http\Message\ResponseFactoryInterface;
use Psr\Http\Message\ResponseInterface;
class SampleResponseFactory implements ResponseFactoryInterface
{
public function createResponse(int $code = 200, string $reasonPhrase = ''): ResponseInterface
{
var_dump(__METHOD__, $code, $reasonPhrase);
return new SampleResponse();
}
}
tests/PsrHttpMessageResponseFactoryInterface.phpt 0000644 00000001574 15173145236 0016422 0 ustar 00 --TEST--
Psr\Http\Message\ResponseFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleResponse.inc';
include __DIR__ . '/SampleResponseFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\ResponseFactoryInterface', false));
var_dump(class_implements('SampleResponseFactory', false));
$factory = new SampleResponseFactory();
$response = $factory->createResponse();
var_dump($response instanceof \Psr\Http\Message\ResponseInterface);
$factory->createResponse(400, 'BAD REQUEST');
--EXPECT--
bool(true)
array(1) {
["PsrExt\Http\Message\ResponseFactoryInterface"]=>
string(44) "PsrExt\Http\Message\ResponseFactoryInterface"
}
string(37) "SampleResponseFactory::createResponse"
int(200)
string(0) ""
bool(true)
string(37) "SampleResponseFactory::createResponse"
int(400)
string(11) "BAD REQUEST"
tests/PsrHttpMessageMessageInterface.phpt 0000644 00000003067 15173145236 0014657 0 ustar 00 --TEST--
Psr\Http\Message\MessageInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleStream.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\MessageInterface', false));
var_dump(class_implements('SampleMessage', false));
$message = new SampleMessage();
$message->getProtocolVersion();
$message->withProtocolVersion('1.0');
$message->getHeaders();
$message->hasHeader('content-type');
$message->getHeader('content-type');
$message->getHeaderLine('content-type');
$message->withHeader('content-type', 'text/plain');
$message->withAddedHeader('content-type', 'text/html');
$message->withoutHeader('content-type');
$message->getBody();
$message->withBody(new SampleStream());
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Message\MessageInterface"]=>
string(36) "PsrExt\Http\Message\MessageInterface"
}
string(33) "SampleMessage::getProtocolVersion"
string(34) "SampleMessage::withProtocolVersion"
string(3) "1.0"
string(25) "SampleMessage::getHeaders"
string(24) "SampleMessage::hasHeader"
string(12) "content-type"
string(24) "SampleMessage::getHeader"
string(12) "content-type"
string(28) "SampleMessage::getHeaderLine"
string(12) "content-type"
string(25) "SampleMessage::withHeader"
string(12) "content-type"
string(10) "text/plain"
string(30) "SampleMessage::withAddedHeader"
string(12) "content-type"
string(9) "text/html"
string(28) "SampleMessage::withoutHeader"
string(12) "content-type"
string(22) "SampleMessage::getBody"
string(23) "SampleMessage::withBody"
object(SampleStream)#%d (0) {
}
tests/PsrLinkLinkInterface.phpt 0000644 00000000576 15173145237 0012644 0 ustar 00 --TEST--
Psr\Link\LinkInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Link\LinkInterface;
class MyImpl implements LinkInterface {
public function getHref() {}
public function isTemplated() {}
public function getRels() {}
public function getAttributes() {}
}
$ex = new MyImpl();
var_dump($ex instanceof LinkInterface);
--EXPECT--
bool(true)
tests/PsrLogLevel.phpt 0000644 00000000755 15173145240 0011012 0 ustar 00 --TEST--
Psr\Log\LogLevel
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\LogLevel;
var_dump(LogLevel::EMERGENCY);
var_dump(LogLevel::ALERT);
var_dump(LogLevel::CRITICAL);
var_dump(LogLevel::ERROR);
var_dump(LogLevel::WARNING);
var_dump(LogLevel::NOTICE);
var_dump(LogLevel::INFO);
var_dump(LogLevel::DEBUG);
--EXPECT--
string(9) "emergency"
string(5) "alert"
string(8) "critical"
string(5) "error"
string(7) "warning"
string(6) "notice"
string(4) "info"
string(5) "debug"
tests/PsrHttpServerRequestHandlerInterface.phpt 0000644 00000001636 15173145240 0016076 0 ustar 00 --TEST--
Psr\Http\Server\RequestHandlerInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleServerRequest.inc';
include __DIR__ . '/SampleResponse.inc';
include __DIR__ . '/SampleRequestHandler.inc';
var_dump(interface_exists('\\Psr\\Http\\Server\\RequestHandlerInterface', false));
var_dump(class_implements('SampleRequestHandler', false));
$request = new SampleServerRequest();
var_dump($request instanceof \Psr\Http\Message\ServerRequestInterface);
$handler = new SampleRequestHandler();
$response = $handler->handle($request);
var_dump($response instanceof \Psr\Http\Message\ResponseInterface);
--EXPECT--
bool(true)
array(1) {
["PsrExt\Http\Server\RequestHandlerInterface"]=>
string(42) "PsrExt\Http\Server\RequestHandlerInterface"
}
bool(true)
string(28) "SampleRequestHandler::handle"
bool(true)
tests/PsrLogAbstractLogger_construct.phpt 0000644 00000000525 15173145241 0014746 0 ustar 00 --TEST--
Psr\Log\AbstractLogger
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Log\AbstractLogger;
try {
new AbstractLogger();
} catch( \EngineException $e ) {
echo $e->getMessage();
} catch( \Throwable $e ) {
echo $e->getMessage();
}
--EXPECTF--
%SCannot instantiate abstract class PsrExt\Log\AbstractLogger%S
tests/SampleClient.inc 0000644 00000000526 15173145241 0010767 0 ustar 00 <?php
use Psr\Http\Client\ClientInterface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\ResponseInterface;
class SampleClient implements ClientInterface
{
public function sendRequest(RequestInterface $request): ResponseInterface
{
var_dump(__METHOD__, $request);
return new SampleResponse();
}
}
tests/SampleRequestFactory.inc 0000644 00000000507 15173145242 0012531 0 ustar 00 <?php
use Psr\Http\Message\RequestFactoryInterface;
use Psr\Http\Message\RequestInterface;
class SampleRequestFactory implements RequestFactoryInterface
{
public function createRequest(string $method, $uri): RequestInterface
{
var_dump(__METHOD__, $method, $uri);
return new SampleRequest();
}
}
tests/SampleListenerProvider.inc 0000644 00000000447 15173145243 0013055 0 ustar 00 <?php
use Psr\EventDispatcher\ListenerProviderInterface;
class SampleListenerProvider implements ListenerProviderInterface
{
public function getListenersForEvent(object $event): iterable
{
var_dump(__METHOD__, is_object($event));
return new ArrayIterator([]);
}
}
tests/PsrHttpMessageUploadedFileFactoryInterface.phpt 0000644 00000002147 15173145244 0017155 0 ustar 00 --TEST--
Psr\Http\Message\UploadedFileFactoryInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleStream.inc';
include __DIR__ . '/SampleUploadedFile.inc';
include __DIR__ . '/SampleUploadedFileFactory.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\UploadedFileFactoryInterface', false));
var_dump(class_implements('SampleUploadedFileFactory', false));
$stream = new SampleStream();
$factory = new SampleUploadedFileFactory();
$uploadedFile = $factory->createUploadedFile($stream);
var_dump($uploadedFile instanceof \Psr\Http\Message\UploadedFileInterface);
$factory->createUploadedFile($stream, 100, UPLOAD_ERR_NO_FILE, 'image.png', 'image/png');
--EXPECTF--
bool(true)
array(1) {
["PsrExt\Http\Message\UploadedFileFactoryInterface"]=>
string(48) "PsrExt\Http\Message\UploadedFileFactoryInterface"
}
string(45) "SampleUploadedFileFactory::createUploadedFile"
object(SampleStream)#%d (0) {
}
NULL
int(0)
NULL
NULL
bool(true)
string(45) "SampleUploadedFileFactory::createUploadedFile"
object(SampleStream)#%d (0) {
}
int(100)
int(4)
string(9) "image.png"
string(9) "image/png"
tests/PsrHttpMessageRequestInterface.phpt 0000644 00000002602 15173145245 0014715 0 ustar 00 --TEST--
Psr\Http\Message\RequestInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
include __DIR__ . '/SampleMessage.inc';
include __DIR__ . '/SampleRequest.inc';
include __DIR__ . '/SampleUri.inc';
var_dump(interface_exists('\\Psr\\Http\\Message\\RequestInterface', false));
var_dump(is_subclass_of('\\Psr\\Http\\Message\\RequestInterface', '\\Psr\\Http\\Message\\MessageInterface'));
var_dump(class_implements('SampleRequest', false));
$request = new SampleRequest();
var_dump($request instanceof \Psr\Http\Message\MessageInterface);
$request->getRequestTarget();
$request->withRequestTarget('test');
$request->getMethod();
$request->withMethod('PUT');
$request->getUri();
$request->withUri(new SampleUri());
$request->withUri(new SampleUri(), true);
--EXPECTF--
bool(true)
bool(true)
array(2) {
["PsrExt\Http\Message\MessageInterface"]=>
string(36) "PsrExt\Http\Message\MessageInterface"
["PsrExt\Http\Message\RequestInterface"]=>
string(36) "PsrExt\Http\Message\RequestInterface"
}
bool(true)
string(31) "SampleRequest::getRequestTarget"
string(32) "SampleRequest::withRequestTarget"
string(4) "test"
string(24) "SampleRequest::getMethod"
string(25) "SampleRequest::withMethod"
string(3) "PUT"
string(21) "SampleRequest::getUri"
string(22) "SampleRequest::withUri"
object(SampleUri)#%d (0) {
}
bool(false)
string(22) "SampleRequest::withUri"
object(SampleUri)#%d (0) {
}
bool(true)
tests/PsrContainerNotFoundExceptionInterface.phpt 0000644 00000001141 15173145245 0016373 0 ustar 00 --TEST--
Psr\Container\NotFoundExceptionInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
class MyException extends Exception implements NotFoundExceptionInterface {}
$ex = new MyException('test');
var_dump($ex instanceof ContainerExceptionInterface);
var_dump($ex instanceof NotFoundExceptionInterface);
var_dump($ex instanceof Exception);
try {
throw $ex;
} catch( NotFoundExceptionInterface $e ) {
var_dump($e->getMessage());
}
--EXPECT--
bool(true)
bool(true)
bool(true)
string(4) "test"
tests/gh78_php8.phpt 0000644 00000001062 15173145246 0010326 0 ustar 00 --TEST--
Psr\Log\LoggerInterface - Invalid context default value (PHP 8)
--SKIPIF--
<?php
include 'skip.inc';
if (PHP_VERSION_ID < 80000) {
print "skip Due to version incompatibility";
}
?>
--FILE--
<?php
$reflectionMethod = new \ReflectionMethod(\Psr\Log\LoggerInterface::class, "emergency");
$reflectionParameter = $reflectionMethod->getParameters()[1];
var_dump($reflectionParameter->isOptional());
var_dump($reflectionParameter->isDefaultValueAvailable());
var_dump($reflectionParameter->getDefaultValue());
--EXPECT--
bool(true)
bool(true)
array(0) {
}
tests/PsrLinkLinkProviderInterface.phpt 0000644 00000000535 15173145247 0014353 0 ustar 00 --TEST--
Psr\Link\LinkProviderInterface
--SKIPIF--
<?php include('skip.inc'); ?>
--FILE--
<?php
use Psr\Link\LinkProviderInterface;
class MyImpl implements LinkProviderInterface {
public function getLinks() {}
public function getLinksByRel($rel) {}
}
$ex = new MyImpl();
var_dump($ex instanceof LinkProviderInterface);
--EXPECT--
bool(true)
tests/SampleUploadedFile.inc 0000644 00000001127 15173145251 0012105 0 ustar 00 <?php
use Psr\Http\Message\UploadedFileInterface;
class SampleUploadedFile implements UploadedFileInterface
{
public function getStream()
{
var_dump(__METHOD__);
}
public function moveTo($targetPath)
{
var_dump(__METHOD__, $targetPath);
}
public function getSize()
{
var_dump(__METHOD__);
}
public function getError()
{
var_dump(__METHOD__);
}
public function getClientFilename()
{
var_dump(__METHOD__);
}
public function getClientMediaType()
{
var_dump(__METHOD__);
}
}
tests/SampleUploadedFileFactory.inc 0000644 00000001133 15173145252 0013433 0 ustar 00 <?php
use Psr\Http\Message\UploadedFileFactoryInterface;
use Psr\Http\Message\UploadedFileInterface;
use Psr\Http\Message\StreamInterface;
class SampleUploadedFileFactory implements UploadedFileFactoryInterface
{
public function createUploadedFile(
StreamInterface $stream,
int $size = null,
int $error = \UPLOAD_ERR_OK,
string $clientFilename = null,
string $clientMediaType = null
): UploadedFileInterface
{
var_dump(__METHOD__, $stream, $size, $error, $clientFilename, $clientMediaType);
return new SampleUploadedFile();
}
}