1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
/** |
4
|
|
|
* This file is part of the skidata-library package. |
5
|
|
|
* |
6
|
|
|
* (c) 2017 WEBEWEB |
7
|
|
|
* |
8
|
|
|
* For the full copyright and license information, please view the LICENSE |
9
|
|
|
* file that was distributed with this source code. |
10
|
|
|
*/ |
11
|
|
|
|
12
|
|
|
namespace WBW\Library\SkiData\Tests\Parser; |
13
|
|
|
|
14
|
|
|
use DateTime; |
15
|
|
|
use PHPUnit_Framework_TestCase; |
16
|
|
|
use WBW\Library\SkiData\Entity\SkiDataCard; |
17
|
|
|
use WBW\Library\SkiData\Parser\SkiDataCardParser; |
18
|
|
|
|
19
|
|
|
/** |
20
|
|
|
* SkiData card parser test. |
21
|
|
|
* |
22
|
|
|
* @author webeweb <https://github.com/webeweb/> |
23
|
|
|
* @package WBW\Library\SkiData\Tests\Parser |
24
|
|
|
* @final |
25
|
|
|
*/ |
26
|
|
|
final class SkiDataCardParserTest extends PHPUnit_Framework_TestCase { |
27
|
|
|
|
28
|
|
|
/** |
29
|
|
|
* Tests the parseEntity() method. |
30
|
|
|
* |
31
|
|
|
* @return void |
32
|
|
|
*/ |
33
|
|
|
public function testParseEntity() { |
34
|
|
|
|
35
|
|
|
$obj = new SkiDataCard(); |
36
|
|
|
$obj->setTicketNumber("ticketNumber"); |
37
|
|
|
$obj->setUserNumber(987654321); |
38
|
|
|
$obj->setArticleNumber(321); |
39
|
|
|
$obj->setValidFrom(new DateTime("2017-09-20 08:00:00")); |
40
|
|
|
$obj->setExpires(new DateTime("2017-09-21 08:00:00")); |
41
|
|
|
$obj->setBlocked(true); |
42
|
|
|
$obj->setBlockedDate(null); |
43
|
|
|
$obj->setProductionState(2); |
44
|
|
|
$obj->setReasonProduction(0); |
45
|
|
|
$obj->setProductionCounter(3412); |
46
|
|
|
$obj->setNeutral(false); |
47
|
|
|
$obj->setRetainTicketEntry(false); |
48
|
|
|
$obj->setEntryBarrierClosed(true); |
49
|
|
|
$obj->setExitBarrierClosed(true); |
50
|
|
|
$obj->setRetainTicketExit(false); |
51
|
|
|
$obj->setDisplayText(true); |
52
|
|
|
$obj->setDisplayText1("displayText1"); |
53
|
|
|
$obj->setDisplayText2("displayText2"); |
54
|
|
|
$obj->setPersonnalNo(9876); |
55
|
|
|
$obj->setResidualValue(123456789012); |
56
|
|
|
$obj->setSerialNumberKeyCardSwatch("serialNumberKeyCard"); |
57
|
|
|
$obj->setCurrencyResidualValue("3.0"); |
58
|
|
|
$obj->setTicketType(3); |
59
|
|
|
$obj->setTicketSubType("ticke"); |
60
|
|
|
$obj->setSerialNo("serialNo"); |
61
|
|
|
$obj->setSuspendPeriodFrom(null); |
62
|
|
|
$obj->setSuspendPeriodUntil(new DateTime("2017-09-22 08:00:00")); |
63
|
|
|
$obj->setUseValidCarParks(true); |
64
|
|
|
$obj->setProductionFacilityNumber(1234567); |
65
|
|
|
|
66
|
|
|
$res = '"ticketNumber";987654321;321;20170920;20170921;1;;2;0;3412;0;0;1;1;0;1;"displayText1";"displayText2";9876;123456789012;"serialNumberKeyCard";"3.0";3;"ticke";"serialNo";;20170922;1;1234567'; |
67
|
|
|
$this->assertEquals($res, (new SkiDataCardParser())->parseEntity($obj)); |
68
|
|
|
} |
69
|
|
|
|
70
|
|
|
/** |
71
|
|
|
* Tests the parseLine() method. |
72
|
|
|
* |
73
|
|
|
* @return void |
74
|
|
|
*/ |
75
|
|
|
public function testParseLine() { |
76
|
|
|
|
77
|
|
|
$obj = '"ticketNumber";987654321;321;20170920;20170921;1;;2;0;3412;0;0;1;1;0;1;"displayText1";"displayText2";9876;123456789012;"serialNumberKeyCard";"3.0";3;"ticke";"serialNo";;20170922;1;1234567'; |
78
|
|
|
|
79
|
|
|
$res = (new SkiDataCardParser())->parseLine($obj); |
80
|
|
|
$this->assertEquals("ticketNumber", $res->getTicketNumber()); |
81
|
|
|
$this->assertEquals(987654321, $res->getUserNumber()); |
82
|
|
|
$this->assertEquals(321, $res->getArticleNumber()); |
83
|
|
|
$this->assertEquals(new DateTime("2017-09-20 00:00:00"), $res->getValidFrom()); |
84
|
|
|
$this->assertEquals(new DateTime("2017-09-21 00:00:00"), $res->getExpires()); |
85
|
|
|
$this->assertEquals(true, $res->getBlocked()); |
86
|
|
|
$this->assertEquals(null, $res->getBlockedDate()); |
87
|
|
|
$this->assertEquals(2, $res->getProductionState()); |
88
|
|
|
$this->assertEquals(0, $res->getReasonProduction()); |
89
|
|
|
$this->assertEquals(3412, $res->getProductionCounter()); |
90
|
|
|
$this->assertEquals(false, $res->getNeutral()); |
91
|
|
|
$this->assertEquals(false, $res->getRetainTicketEntry()); |
92
|
|
|
$this->assertEquals(true, $res->getEntryBarrierClosed()); |
93
|
|
|
$this->assertEquals(true, $res->getExitBarrierClosed()); |
94
|
|
|
$this->assertEquals(false, $res->getRetainTicketExit()); |
95
|
|
|
$this->assertEquals(true, $res->getDisplayText()); |
96
|
|
|
$this->assertEquals("displayText1", $res->getDisplayText1()); |
97
|
|
|
$this->assertEquals("displayText2", $res->getDisplayText2()); |
98
|
|
|
$this->assertEquals(9876, $res->getPersonnalNo()); |
99
|
|
|
$this->assertEquals(123456789012, $res->getResidualValue()); |
100
|
|
|
$this->assertEquals("serialNumberKeyCard", $res->getSerialNumberKeyCardSwatch()); |
101
|
|
|
$this->assertEquals("3.0", $res->getCurrencyResidualValue()); |
102
|
|
|
$this->assertEquals(3, $res->getTicketType()); |
103
|
|
|
$this->assertEquals("ticke", $res->getTicketSubType()); |
104
|
|
|
$this->assertEquals("serialNo", $res->getSerialNo()); |
105
|
|
|
$this->assertEquals(null, $res->getSuspendPeriodFrom()); |
106
|
|
|
$this->assertEquals(new DateTime("2017-09-22 00:00:00"), $res->getSuspendPeriodUntil()); |
107
|
|
|
$this->assertEquals(true, $res->getUseValidCarParks()); |
108
|
|
|
$this->assertEquals(1234567, $res->getProductionFacilityNumber()); |
109
|
|
|
} |
110
|
|
|
|
111
|
|
|
} |
112
|
|
|
|