/
Psr7HttpModuleTest.php
39 lines (35 loc) · 1.21 KB
/
Psr7HttpModuleTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
namespace Ray\HttpMessage;
use Nyholm\Psr7\ServerRequest;
use PHPUnit\Framework\TestCase;
use Psr\Http\Message\ServerRequestInterface;
use Ray\Di\Injector;
class Psr7HttpModuleTest extends TestCase
{
public function testPsr7HttpModule()
{
$injector = new Injector(new Psr7Module);
/* @var RequestProviderInterface $requestProvider */
$requestProvider = $injector->getInstance(RequestProviderInterface::class);
$_SERVER = $this->superGlobalsServer();
$request = $requestProvider->get();
$this->assertInstanceOf(ServerRequestInterface::class, $request);
}
public function testPsr7ServerRequestTest()
{
$injector = new Injector(new Psr7Module);
/* @var ServerRequest $serverRequest */
$serverRequest = $injector->getInstance(ServerRequest::class);
$this->assertInstanceOf(ServerRequest::class, $serverRequest);
}
public function superGlobalsServer()
{
return [
'REQUEST_METHOD' => 'POST',
'REQUEST_URI' => '/foo/bar',
'QUERY_STRING' => 'abc=123&foo=bar',
'SERVER_NAME' => 'example.com',
'CONTENT_TYPE' => 'multipart/form-data'
];
}
}