-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathpangu-test.php
208 lines (138 loc) · 6.3 KB
/
pangu-test.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
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
<?php
require_once 'pangu.php';
use PHPUnit\Framework\TestCase;
class PanguTest extends TestCase
{
public function testSpacingText() {
$this->assertEquals('請問 Jackie 的鼻子有幾個?123 個!', pangu('請問Jackie的鼻子有幾個?123個!'));
$this->assertEquals('請問 Jackie 的鼻子有幾個?123 個!', pangu('請問 Jackie 的鼻子有幾個?123 個!'));
}
public function testTilde() {
$this->assertEquals('前面~ 後面', pangu('前面~後面'));
$this->assertEquals('前面 ~ 後面', pangu('前面 ~ 後面'));
}
public function testBackQuote() {
$this->assertEquals('前面 ` 後面', pangu('前面`後面'));
}
public function testExclamationMark() {
$this->assertEquals('前面! 後面', pangu('前面!後面'));
$this->assertEquals('前面! 後面', pangu('前面! 後面'));
$this->assertEquals('前面 ! 後面', pangu('前面 ! 後面'));
}
public function testAt1() {
$this->assertEquals('請 @vinta 吃大便', pangu('請@vinta吃大便'));
}
public function testAt2() {
$this->assertEquals('請 @陳上進 吃大便', pangu('請@陳上進 吃大便'));
}
public function testHash1() {
$this->assertEquals('前面 #H2G2 後面', pangu('前面#H2G2後面'));
}
public function testHash2() {
$this->assertEquals('前面 #銀河便車指南 後面', pangu('前面#銀河便車指南 後面'));
}
public function testHash3() {
$this->assertEquals('前面 #銀河公車指南 #銀河大客車指南 後面', pangu('前面#銀河公車指南 #銀河大客車指南 後面'));
}
public function testHash4() {
$this->assertEquals('前面 #銀河閃電霹靂車指南# 後面', pangu('前面#銀河閃電霹靂車指南#後面'));
}
public function testDollar() {
$this->assertEquals('前面 $ 後面', pangu('前面$後面'));
}
public function testPercent() {
$this->assertEquals('前面 % 後面', pangu('前面%後面'));
}
public function testCarat() {
$this->assertEquals('前面 ^ 後面', pangu('前面^後面'));
}
public function testAmpersand() {
$this->assertEquals('前面 & 後面', pangu('前面&後面'));
}
public function testAsterisk() {
$this->assertEquals('前面 * 後面', pangu('前面*後面'));
}
public function testParenthesis() {
$this->assertEquals('前面 ( 後面', pangu('前面(後面'));
$this->assertEquals('前面 ( 後面', pangu('前面 ( 後面'));
$this->assertEquals('前面 ) 後面', pangu('前面)後面'));
$this->assertEquals('前面 ) 後面', pangu('前面 ) 後面'));
}
public function testParenthesisPair() {
$this->assertEquals('前面 (中文 123 漢字) 後面', pangu('前面(中文123漢字)後面'));
$this->assertEquals('前面 (中文 123) 後面', pangu('前面(中文123)後面'));
$this->assertEquals('前面 (123 漢字) 後面', pangu('前面(123漢字)後面'));
$this->assertEquals('前面 (中文 123 漢字) tail', pangu('前面(中文123漢字) tail'));
$this->assertEquals('head (中文 123 漢字) 後面', pangu('head (中文123漢字)後面'));
$this->assertEquals('head (中文 123 漢字) tail', pangu('head (中文123漢字) tail'));
}
public function testMinus() {
$this->assertEquals('前面 - 後面', pangu('前面-後面'));
}
public function testUnderscore() {
$this->assertEquals('前面_後面', pangu('前面_後面'));
$this->assertEquals('前面 _ 後面', pangu('前面 _ 後面'));
}
public function testPlus() {
$this->assertEquals('前面 + 後面', pangu('前面+後面'));
}
public function testEqual() {
$this->assertEquals('前面 = 後面', pangu('前面=後面'));
}
public function testBrace() {
$this->assertEquals('前面 { 後面', pangu('前面{後面'));
}
public function testBracket() {
$this->assertEquals('前面 [ 後面', pangu('前面[後面'));
}
public function testPipe() {
$this->assertEquals('前面 | 後面', pangu('前面|後面'));
}
public function testBackslash() {
$this->assertEquals('前面 \\ 後面', pangu('前面\\後面'));
}
public function testColon() {
$this->assertEquals('前面: 後面', pangu('前面:後面'));
$this->assertEquals('前面: 後面', pangu('前面: 後面'));
$this->assertEquals('前面 : 後面', pangu('前面 : 後面'));
}
public function testSemicolon() {
$this->assertEquals('前面; 後面', pangu('前面;後面'));
$this->assertEquals('前面; 後面', pangu('前面; 後面'));
$this->assertEquals('前面 ; 後面', pangu('前面 ; 後面'));
}
public function testQuote() {
$this->assertEquals('前面 " 後面', pangu('前面"後面'));
$this->assertEquals('前面 "中文 123 漢字" 後面', pangu('前面 "中文123漢字" 後面'));
$this->assertEquals('前面 "" 後面', pangu('前面""後面'));
$this->assertEquals('前面 " " 後面', pangu('前面" "後面'));
}
public function testSingleQuote() {
$this->assertEquals('前面 \' 後面', pangu('前面\'後面'));
$this->assertEquals('前面 \'中文 123 漢字\' 後面', pangu('前面\'中文123漢字\'後面'));
$this->assertEquals('前面 \'\' 後面', pangu('前面\'\'後面'));
$this->assertEquals('前面 \' \' 後面', pangu('前面\' \'後面'));
}
public function testLessThan() {
$this->assertEquals('前面 < 後面', pangu('前面<後面'));
}
public function testComma() {
$this->assertEquals('前面, 後面', pangu('前面,後面'));
$this->assertEquals('前面, 後面', pangu('前面, 後面'));
$this->assertEquals('前面, 後面', pangu('前面, 後面'));
}
public function testGreaterThan() {
$this->assertEquals('前面 > 後面', pangu('前面>後面'));
}
public function testPeriod() {
$this->assertEquals('前面. 後面', pangu('前面.後面'));$this->assertEquals('前面. 後面', pangu('前面. 後面'));
$this->assertEquals('前面. 後面', pangu('前面. 後面'));
}
public function testQuestionMark() {
$this->assertEquals('前面? 後面', pangu('前面?後面'));
$this->assertEquals('前面? 後面', pangu('前面? 後面'));$this->assertEquals('前面? 後面', pangu('前面? 後面'));
}
public function testSlash() {
$this->assertEquals('前面 / 後面', pangu('前面/後面'));
}
}