|
1 | | -from unittest.mock import patch |
2 | | - |
3 | | -import pytest |
4 | | - |
5 | 1 | from verbecc.src.parsers.verbs_parser import VerbsParser |
6 | | -from verbecc.src.parsers.verb import Verb |
7 | | -from verbecc.src.defs.types.exceptions import VerbsParserError |
| 2 | +from verbecc.src.defs.types.lang_code import LangCodeISO639_1 as Lang |
8 | 3 |
|
9 | 4 |
|
10 | 5 | def test_verbs_parser(): |
11 | | - vp = VerbsParser() |
12 | | - assert len(vp.verbs) >= 7000 |
13 | | - |
14 | | - |
15 | | -def test_verb(): |
16 | | - vp = VerbsParser() |
17 | | - verb = vp.find_verb_by_infinitive("manger") |
18 | | - assert verb.infinitive == "manger" |
19 | | - assert verb.template == "man:ger" |
20 | | - assert verb.translation_en == "eat" |
21 | | - |
22 | | - |
23 | | -def test_verb_two(): |
24 | | - vp = VerbsParser() |
25 | | - verb = vp.find_verb_by_infinitive("abattre") |
26 | | - assert verb.infinitive == "abattre" |
27 | | - assert verb.template == "bat:tre" |
28 | | - assert verb.translation_en == "tear down" |
29 | | - |
30 | | - |
31 | | -@patch("lxml.etree._Element") |
32 | | -def test_verb_invalid_xml(mock_v_elem): |
33 | | - mock_v_elem.tag.return_value = "not-v" |
34 | | - with pytest.raises(VerbsParserError): |
35 | | - v = Verb(mock_v_elem) |
36 | | - |
37 | | - |
38 | | -@pytest.mark.parametrize( |
39 | | - "query,expected_matches", |
40 | | - [ |
41 | | - ("mang", ["mangeotter", "manger"]), |
42 | | - ("Mang", ["mangeotter", "manger"]), |
43 | | - ], |
44 | | -) |
45 | | -def test_get_verbs_that_start_with(query, expected_matches): |
46 | | - vp = VerbsParser() |
47 | | - matches = vp.get_verbs_that_start_with(query) |
48 | | - assert matches == expected_matches |
| 6 | + vp = VerbsParser(Lang.fr) |
| 7 | + verbs = vp.parse() |
| 8 | + assert len(verbs) >= 7000 |
0 commit comments