-
Notifications
You must be signed in to change notification settings - Fork 371
Expand file tree
/
Copy pathProcessManagerTest.php
More file actions
75 lines (70 loc) · 3.41 KB
/
ProcessManagerTest.php
File metadata and controls
75 lines (70 loc) · 3.41 KB
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?php
namespace PHPPM\Tests;
class ProcessManagerTest extends PhpPmTestCase
{
public function provideReplaceHeader()
{
return [
[
"Content-Type: plain/text\r\nX-Real-Ip: 1337.1337.1337.1337\r\n\r\n",
"Content-Type: plain/text\r\nX-Real-IP: 127.0.0.1\r\n\r\n",
['X-Real-IP' => '127.0.0.1']
],
[
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nConnection: keep-alive\r\n\r\n",
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nConnection: keep-alive\r\nX-PHP-PM-Remote-IP: 127.0.0.1\r\n\r\n",
['X-PHP-PM-Remote-IP' => '127.0.0.1']
],
[
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nConnection: keep-alive\r\nX-php-pm-REMOTE-IP: 137.137.137.137\r\n\r\n",
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nConnection: keep-alive\r\nX-PHP-PM-Remote-IP: 127.0.0.1\r\n\r\n",
['X-PHP-PM-Remote-IP' => '127.0.0.1']
],
[
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nX-php-pm-REMOTE-IP: 137.137.137.137\r\nConnection: keep-alive\r\n\r\n",
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nX-PHP-PM-Remote-IP: 127.0.0.1\r\nConnection: keep-alive\r\n\r\n",
['X-PHP-PM-Remote-IP' => '127.0.0.1']
],
[
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nX-php-pm-REMOTE-IP: 137.137.137.137\r\nConnection: keep-alive\r\n\r\n",
"GET /images/spinners/octocat-spinner-128.gif HTTP/1.1\r\nHost: assets-cdn.github.com\r\nX-PHP-PM-Remote-IP: 192.168.1.1\r\nConnection: keep-alive\r\n\r\n",
['X-PHP-PM-Remote-IP' => '192.168.1.1']
]
];
}
/**
* @dataProvider provideReplaceHeader
*
* @param string $originHeader
* @param string $expectedNewHeader
* @param array $replaceHeaders
*/
public function testReplaceHeader($originHeader, $expectedNewHeader, array $replaceHeaders)
{
$replaceHeader = $this->getRequestHandlerMethod('replaceHeader');
$replacedHeader = $replaceHeader($originHeader, $replaceHeaders);
$this->assertEquals($expectedNewHeader, $replacedHeader);
}
public function provideIsHeaderEnd()
{
return [
["Content-Type: plain/text\r\nX-Real-Ip: 1337.1337.1337.1337\r\n\r\n", true],
["Content-Type: plain/text\r\nX-Real-Ip: 1337.1337.1337.1337\r", false],
["Content-Type: plain/text\r\nX-Real-Ip: 1337.1337.1337.1337\r\n", false],
["Content-Type: plain/text\r\nX-Real-Ip: 1337.133", false],
["Content-Type: plain/text\r\n\r\n", true],
["Content-Type: plain/text\r\nX-Real-Ip: 1337.1337.1337.1337\r\n\r\nThis is some content", true],
];
}
/**
* @dataProvider provideIsHeaderEnd
*
* @param string $header
* @param boolean $isEnd
*/
public function testIsHeaderEnd($header, $isEnd)
{
$isHeaderEnd = $this->getRequestHandlerMethod('isHeaderEnd');
$this->assertEquals($isHeaderEnd($header), $isEnd);
}
}