|
1
|
|
|
<?php |
|
2
|
|
|
|
|
3
|
|
|
namespace Fhp\ResponseTest; |
|
4
|
|
|
|
|
5
|
|
|
use Fhp\Response\Response; |
|
6
|
|
|
|
|
7
|
|
|
class ResponseTest extends \PHPUnit_Framework_TestCase |
|
8
|
|
|
{ |
|
9
|
|
|
protected static function getMethod($class, $name) |
|
10
|
|
|
{ |
|
11
|
|
|
$class = new \ReflectionClass($class); |
|
12
|
|
|
$method = $class->getMethod($name); |
|
13
|
|
|
$method->setAccessible(TRUE); |
|
14
|
|
|
|
|
15
|
|
|
return $method; |
|
16
|
|
|
} |
|
17
|
|
|
|
|
18
|
|
|
public function test_getter_and_setter() |
|
19
|
|
|
{ |
|
20
|
|
|
$response = self::getMethod('Fhp\Response\Response', 'splitSegment'); |
|
21
|
|
|
|
|
22
|
|
|
$withoutEscape = new Response(''); |
|
23
|
|
|
$escaped = clone $withoutEscape; |
|
24
|
|
|
|
|
25
|
|
|
$segments = $response->invokeArgs($withoutEscape, [ |
|
26
|
|
|
'HISAL:5:5:3+111111111::280:111111111+GiroBest+EUR+C:9999,99:EUR:20161018+C:0,:EUR:20161018+0,:EUR+9999,99:EUR', |
|
27
|
|
|
]); |
|
28
|
|
|
|
|
29
|
|
|
$segmentsEscaped = $response->invokeArgs($escaped, [ |
|
30
|
|
|
'HISAL:5:5:3+111111111::280:111111111+GiroBusiness?++EUR+C:9999,99:EUR:20161018+C:0,:EUR:20161018+0,:EUR+9999,99:EUR', |
|
31
|
|
|
]); |
|
32
|
|
|
|
|
33
|
|
|
$this->assertEquals('HISAL:5:5:3', $segments[0]); |
|
34
|
|
|
$this->assertEquals('111111111::280:111111111', $segments[1]); |
|
35
|
|
|
$this->assertEquals('GiroBest', $segments[2]); |
|
36
|
|
|
$this->assertEquals('EUR', $segments[3]); |
|
37
|
|
|
$this->assertEquals('C:9999,99:EUR:20161018', $segments[4]); |
|
38
|
|
|
$this->assertEquals('C:0,:EUR:20161018', $segments[5]); |
|
39
|
|
|
$this->assertEquals('0,:EUR', $segments[6]); |
|
40
|
|
|
$this->assertEquals('9999,99:EUR', $segments[7]); |
|
41
|
|
|
|
|
42
|
|
|
$this->assertEquals('HISAL:5:5:3', $segmentsEscaped[0]); |
|
43
|
|
|
$this->assertEquals('111111111::280:111111111', $segmentsEscaped[1]); |
|
44
|
|
|
$this->assertEquals('GiroBusiness+', $segmentsEscaped[2]); |
|
45
|
|
|
$this->assertEquals('EUR', $segmentsEscaped[3]); |
|
46
|
|
|
$this->assertEquals('C:9999,99:EUR:20161018', $segmentsEscaped[4]); |
|
47
|
|
|
$this->assertEquals('C:0,:EUR:20161018', $segmentsEscaped[5]); |
|
48
|
|
|
$this->assertEquals('0,:EUR', $segmentsEscaped[6]); |
|
49
|
|
|
$this->assertEquals('9999,99:EUR', $segmentsEscaped[7]); |
|
50
|
|
|
} |
|
51
|
|
|
} |
|
52
|
|
|
|