|
11 | 11 | NodeKind, |
12 | 12 | TemplateNode, |
13 | 13 | WikiNode, |
| 14 | + is_list, |
| 15 | + is_list_item, |
14 | 16 | print_tree, |
15 | 17 | ) |
16 | 18 |
|
@@ -3279,6 +3281,76 @@ def test_pipe_in_external_link(self): |
3279 | 3281 | ], |
3280 | 3282 | ) |
3281 | 3283 |
|
| 3284 | + def test_is_list_fn(self): |
| 3285 | + self.ctx.start_page("test") |
| 3286 | + root = self.ctx.parse( |
| 3287 | + """* test |
| 3288 | +** test2 |
| 3289 | +""" |
| 3290 | + ) |
| 3291 | + self.assertFalse(is_list(root)) |
| 3292 | + main_list = root.children[0] |
| 3293 | + self.assertTrue(is_list(main_list)) |
| 3294 | + item1 = main_list.children[0] |
| 3295 | + test_text = item1.children[0] |
| 3296 | + test2_list = item1.children[1] |
| 3297 | + self.assertFalse(is_list(item1)) |
| 3298 | + self.assertFalse(is_list(test_text)) |
| 3299 | + self.assertTrue(is_list(test2_list)) |
| 3300 | + |
| 3301 | + def test_is_list_fn_2(self): |
| 3302 | + self.ctx.start_page("test") |
| 3303 | + root = self.ctx.parse( |
| 3304 | + """<ul><li>test<ul><li>test2</li></ul></ul> |
| 3305 | +""" |
| 3306 | + ) |
| 3307 | + self.assertFalse(is_list(root)) |
| 3308 | + main_list = root.children[0] |
| 3309 | + self.assertTrue(is_list(main_list)) |
| 3310 | + item1 = main_list.children[0] |
| 3311 | + test_text = item1.children[0] |
| 3312 | + test2_list = item1.children[1] |
| 3313 | + self.assertFalse(is_list(item1)) |
| 3314 | + self.assertFalse(is_list(test_text)) |
| 3315 | + self.assertTrue(is_list(test2_list)) |
| 3316 | + |
| 3317 | + def test_is_list_item_fn(self): |
| 3318 | + self.ctx.start_page("test") |
| 3319 | + root = self.ctx.parse( |
| 3320 | + """* test |
| 3321 | +** test2 |
| 3322 | +""" |
| 3323 | + ) |
| 3324 | + self.assertFalse(is_list_item(root)) |
| 3325 | + main_list = root.children[0] |
| 3326 | + self.assertFalse(is_list_item(main_list)) |
| 3327 | + item1 = main_list.children[0] |
| 3328 | + test_text = item1.children[0] |
| 3329 | + test2_list = item1.children[1] |
| 3330 | + self.assertTrue(is_list_item(item1)) |
| 3331 | + self.assertFalse(is_list_item(test_text)) |
| 3332 | + self.assertFalse(is_list_item(test2_list)) |
| 3333 | + item2 = test2_list.children[0] |
| 3334 | + self.assertTrue(is_list_item(item2)) |
| 3335 | + |
| 3336 | + def test_is_list_item_fn_2(self): |
| 3337 | + self.ctx.start_page("test") |
| 3338 | + root = self.ctx.parse( |
| 3339 | + """<ul><li>test<ul><li>test2</li></ul></ul> |
| 3340 | +""" |
| 3341 | + ) |
| 3342 | + self.assertFalse(is_list_item(root)) |
| 3343 | + main_list = root.children[0] |
| 3344 | + self.assertFalse(is_list_item(main_list)) |
| 3345 | + item1 = main_list.children[0] |
| 3346 | + test_text = item1.children[0] |
| 3347 | + test2_list = item1.children[1] |
| 3348 | + self.assertTrue(is_list_item(item1)) |
| 3349 | + self.assertFalse(is_list_item(test_text)) |
| 3350 | + self.assertFalse(is_list_item(test2_list)) |
| 3351 | + item2 = test2_list.children[0] |
| 3352 | + self.assertTrue(is_list_item(item2)) |
| 3353 | + |
3282 | 3354 |
|
3283 | 3355 | # XXX implement <nowiki/> marking for links, templates |
3284 | 3356 | # - https://en.wikipedia.org/wiki/Help:Wikitext#Nowiki |
|
0 commit comments