1<?php
2
3/**
4 * General tests for the imagemap plugin
5 *
6 * @group plugin_imagemap
7 * @group plugins
8 */
9class imagemap_maps_test extends DokuWikiTest {
10
11    public function setUp() {
12        parent::setUp();
13
14    }
15
16    protected $pluginsEnabled = array('imagemapping');
17
18    public function test_simple_map() {
19        $parser_response = p_get_instructions('{{map>:512px-catstalkprey.jpg|Bild1422436366012}}   * [[foo|bar@ 354,185,437,251]] {{<map}}');
20        $expected_response = array(
21            0 => array(
22                0 => 'document_start',
23                1 => Array(),
24                2 => 0,
25            ),
26            1 => array(
27                0 => 'plugin',
28                1 => array(
29                    0 => 'imagemapping',
30                    1 => array(
31                        0 => 1,
32                        1 => 'internalmedia',
33                        2 => ':512px-catstalkprey.jpg',
34                        3 => 'Bild1422436366012',
35                        4 => 'bild1422436366012',
36                        5 => '',
37                        6 => '',
38                        7 => '',
39                        8 => 'cache',
40                    ),
41
42                    2 => 1,
43                    3 => '{{map>:512px-catstalkprey.jpg|Bild1422436366012}}',
44                ),
45
46                2 => 1,
47            ),
48
49            2 => array(
50                0 => 'plugin',
51                1 => array(
52                    0 => 'imagemapping',
53                    1 => array(
54                        0 => 2,
55                        1 => 'area',
56                        2 => 'rect',
57                        3 => '354,185,437,251',
58                        4 => 'internallink',
59                        5 => 'bar',
60                        6 => 'foo',
61                        7 => '',
62                    ),
63
64                    2 => 2,
65                ),
66
67                2 => 1,
68            ),
69
70            3 => Array
71            (
72                0 => 'plugin',
73                1 => Array
74                (
75                    0 => 'imagemapping',
76                    1 => Array
77                    (
78                        0 => 2,
79                        1 => 'divstart',
80                    ),
81
82                    2 => 2,
83                ),
84
85                2 => 1,
86            ),
87
88            4 => Array
89            (
90                0 => 'cdata',
91                1 => Array
92                (
93                    0 =>"\n",
94
95                ),
96
97                2 => 50,
98            ),
99
100            5 => Array
101            (
102                0 => 'plugin',
103                1 => Array
104                (
105                    0 => 'imagemapping',
106                    1 => Array
107                    (
108                        0 => '3',
109                        1 => '   * ',
110                        'title' =>null,
111                    ),
112
113                    2 => '3',
114                    3 => '   * ',
115                ),
116
117                2 => 50,
118            ),
119
120            6 => Array
121            (
122                0 => 'internallink',
123                1 => Array
124                (
125                    0 => 'foo',
126                    1 => 'bar',
127                ),
128
129                2 => 55,
130            ),
131
132            7 => Array
133            (
134                0 => 'plugin',
135                1 => Array
136                (
137                    0 => 'imagemapping',
138                    1 => Array
139                    (
140                        0 => 3,
141                        1 =>' ',
142                        'title' =>null,
143                    ),
144
145                    2 => 3,
146                    2 => 3,
147                    3 =>' ',
148                ),
149
150                2 => 83,
151            ),
152
153            8 => Array
154            (
155                0 => 'plugin',
156                1 => Array
157                (
158                    0 => 'imagemapping',
159                    1 => Array
160                    (
161                        0 => 2,
162                        1 => 'divend',
163                    ),
164
165                    2 => 2,
166                ),
167
168                2 => 83,
169            ),
170
171            9 => Array
172            (
173                0 => 'plugin',
174                1 => Array
175                (
176                    0 => 'imagemapping',
177                    1 => Array
178                    (
179                        0 => 4,
180                    ),
181
182                    2 => 4,
183                    3 => '{{<map}}',
184                ),
185
186                2 => 84,
187            ),
188
189            10 => Array
190            (
191                0 => 'document_end',
192                1 => Array
193                (
194                ),
195
196                2 => 84,
197            ),
198
199        );
200        $this->assertEquals($expected_response, $parser_response);
201    }
202}
203