Coverage for src/wiktextract/extractor/cs/example.py: 95%

16 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-09-12 08:27 +0000

1from wikitextprocessor import TemplateNode, WikiNode 

2 

3from ...page import clean_node 

4from ...wxr_context import WiktextractContext 

5from ..share import calculate_bold_offsets 

6from .models import Example, Sense 

7 

8 

9def extract_example_list_item( 

10 wxr: WiktextractContext, sense: Sense, list_item: WikiNode 

11): 

12 for node in list_item.children: 

13 if isinstance(node, TemplateNode) and node.template_name == "Příklad": 

14 extract_příklad_template(wxr, sense, node) 

15 

16 

17def extract_příklad_template( 

18 wxr: WiktextractContext, sense: Sense, t_node: TemplateNode 

19): 

20 # https://cs.wiktionary.org/wiki/Šablona:Příklad 

21 second_arg = wxr.wtp.parse(t_node.template_parameters.get(2, "")) 

22 third_arg = wxr.wtp.parse(t_node.template_parameters.get(3, "")) 

23 e_data = Example( 

24 text=clean_node(wxr, None, second_arg), 

25 translation=clean_node(wxr, None, third_arg), 

26 ) 

27 if e_data.text != "": 27 ↛ exitline 27 didn't return from function 'extract_příklad_template' because the condition on line 27 was always true

28 calculate_bold_offsets( 

29 wxr, second_arg, e_data.text, e_data, "bold_text_offsets" 

30 ) 

31 sense.examples.append(e_data)