Skip to content

Commit 58a4bfe

Browse files
committed
Example's token definition should be independent to the test case
1 parent 0d4f5ca commit 58a4bfe

File tree

3 files changed

+209
-201
lines changed

3 files changed

+209
-201
lines changed

tests/PHPCtagsTestCase.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@ abstract class PHPCtagsTestCase {
88

99
protected $mExample;
1010

11-
protected $mExampleDefine;
12-
1311
public function __construct()
1412
{
1513
$this->mFormat = "<name>\t<file>\t/^<line content>$/;\"\t<kind>\tline:<line number>\t<scope>\t<access>";
@@ -37,7 +35,13 @@ public function getExample()
3735

3836
public function getExampleDefine()
3937
{
40-
return $this->mExampleDefine;
38+
require_once __DIR__ . '/examples/' . $this->mExample . '.example.define.php';
39+
if (function_exists('e_' . $this->mExample . '_define')) {
40+
$define = call_user_func('e_' . $this->mExample . '_define');
41+
} else {
42+
die('example definition not exist');
43+
}
44+
return $define;
4145
}
4246

4347
public function getExampleContent()
Lines changed: 202 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
<?php
2+
function e_0001_define()
3+
{
4+
return array(
5+
array(
6+
'name'=>'GLOBAL_CONST_1',
7+
'kind'=>'d',
8+
'line'=>'3',
9+
'scope'=>'',
10+
'access'=>'',
11+
),
12+
array(
13+
'name'=>'GLOBAL_CONST_2',
14+
'kind'=>'d',
15+
'line'=>'6',
16+
'scope'=>'',
17+
'access'=>'',
18+
),
19+
array(
20+
'name'=>'$var1',
21+
'kind'=>'v',
22+
'line'=>'8',
23+
'scope'=>'',
24+
'access'=>'',
25+
),
26+
array(
27+
'name'=>'$var2',
28+
'kind'=>'v',
29+
'line'=>'10',
30+
'scope'=>'',
31+
'access'=>'',
32+
),
33+
array(
34+
'name'=>'function_1',
35+
'kind'=>'f',
36+
'line'=>'13',
37+
'scope'=>'',
38+
'access'=>'',
39+
),
40+
array(
41+
'name'=>'$var',
42+
'kind'=>'v',
43+
'line'=>'15',
44+
'scope'=>'function:function_1',
45+
'access'=>'',
46+
),
47+
array(
48+
'name'=>'function_2',
49+
'kind'=>'f',
50+
'line'=>'20',
51+
'scope'=>'',
52+
'access'=>'',
53+
),
54+
array(
55+
'name'=>'Interface_1',
56+
'kind'=>'i',
57+
'line'=>'30',
58+
'scope'=>'',
59+
'access'=>'',
60+
),
61+
array(
62+
'name'=>'CLASS_CONST',
63+
'kind'=>'d',
64+
'line'=>'32',
65+
'scope'=>'interface:Interface_1',
66+
'access'=>'',
67+
),
68+
array(
69+
'name'=>'method_0',
70+
'kind'=>'m',
71+
'line'=>'34',
72+
'scope'=>'interface:Interface_1',
73+
'access'=>'public',
74+
),
75+
array(
76+
'name'=>'method_1',
77+
'kind'=>'m',
78+
'line'=>'36',
79+
'scope'=>'interface:Interface_1',
80+
'access'=>'public',
81+
),
82+
array(
83+
'name'=>'method_2',
84+
'kind'=>'m',
85+
'line'=>'38',
86+
'scope'=>'interface:Interface_1',
87+
'access'=>'public',
88+
),
89+
array(
90+
'name'=>'method_3',
91+
'kind'=>'m',
92+
'line'=>'40',
93+
'scope'=>'interface:Interface_1',
94+
'access'=>'public',
95+
),
96+
array(
97+
'name'=>'Class_1',
98+
'kind'=>'c',
99+
'line'=>'43',
100+
'scope'=>'',
101+
'access'=>'',
102+
),
103+
array(
104+
'name'=>'CLASS_CONST',
105+
'kind'=>'d',
106+
'line'=>'45',
107+
'scope'=>'class:Class_1',
108+
'access'=>'',
109+
),
110+
array(
111+
'name'=>'var1',
112+
'kind'=>'p',
113+
'line'=>'47',
114+
'scope'=>'class:Class_1',
115+
'access'=>'public',
116+
),
117+
array(
118+
'name'=>'var2',
119+
'kind'=>'p',
120+
'line'=>'49',
121+
'scope'=>'class:Class_1',
122+
'access'=>'private',
123+
),
124+
array(
125+
'name'=>'var3',
126+
'kind'=>'p',
127+
'line'=>'51',
128+
'scope'=>'class:Class_1',
129+
'access'=>'protected',
130+
),
131+
array(
132+
'name'=>'__construct',
133+
'kind'=>'m',
134+
'line'=>'53',
135+
'scope'=>'class:Class_1',
136+
'access'=>'public',
137+
),
138+
array(
139+
'name'=>'$var1',
140+
'kind'=>'v',
141+
'line'=>'55',
142+
'scope'=>'method:Class_1::__construct',
143+
'access'=>'',
144+
),
145+
array(
146+
'name'=>'$var2',
147+
'kind'=>'v',
148+
'line'=>'56',
149+
'scope'=>'method:Class_1::__construct',
150+
'access'=>'',
151+
),
152+
array(
153+
'name'=>'$var3',
154+
'kind'=>'v',
155+
'line'=>'57',
156+
'scope'=>'method:Class_1::__construct',
157+
'access'=>'',
158+
),
159+
array(
160+
'name'=>'method_0',
161+
'kind'=>'m',
162+
'line'=>'60',
163+
'scope'=>'class:Class_1',
164+
'access'=>'public',
165+
),
166+
array(
167+
'name'=>'$var',
168+
'kind'=>'v',
169+
'line'=>'62',
170+
'scope'=>'method:Class_1::method_0',
171+
'access'=>'',
172+
),
173+
array(
174+
'name'=>'method_1',
175+
'kind'=>'m',
176+
'line'=>'66',
177+
'scope'=>'class:Class_1',
178+
'access'=>'public',
179+
),
180+
array(
181+
'name'=>'method_2',
182+
'kind'=>'m',
183+
'line'=>'71',
184+
'scope'=>'class:Class_1',
185+
'access'=>'private',
186+
),
187+
array(
188+
'name'=>'method_3',
189+
'kind'=>'m',
190+
'line'=>'76',
191+
'scope'=>'class:Class_1',
192+
'access'=>'protected',
193+
),
194+
array(
195+
'name'=>'Class_2',
196+
'kind'=>'c',
197+
'line'=>'82',
198+
'scope'=>'',
199+
'access'=>'',
200+
),
201+
);
202+
}

0 commit comments

Comments
 (0)