1- from parsel .utils import shorten
1+ from parsel .utils import shorten , extract_regex
22
33from pytest import mark , raises
44import six
@@ -24,3 +24,15 @@ def test_shorten(width, expected):
2424 else :
2525 with raises (expected ):
2626 shorten (u'foobar' , width )
27+
28+
29+ @mark .parametrize ('regex, text, replace_entities, expected' , (
30+ [r'(?P<month>\w+)\s*(?P<day>\d+)\s*\,?\s*(?P<year>\d+)' , 'October 25, 2019' , True , ['October' , '25' , '2019' ]],
31+ [r'(?P<month>\w+)\s*(?P<day>\d+)\s*\,?\s*(?P<year>\d+)' , 'October 25 2019' , True , ['October' , '25' , '2019' ]],
32+ [r'(?P<extract>\w+)\s*(?P<day>\d+)\s*\,?\s*(?P<year>\d+)' , 'October 25 2019' , True , ['October' ]],
33+ [r'\w+\s*\d+\s*\,?\s*\d+' , 'October 25 2019' , True , ['October 25 2019' ]],
34+ [r'^.*$' , '"sometext" & "moretext"' , True , ['"sometext" & "moretext"' ]],
35+ [r'^.*$' , '"sometext" & "moretext"' , False , ['"sometext" & "moretext"' ]],
36+ ))
37+ def test_extract_regex (regex , text , replace_entities , expected ):
38+ assert extract_regex (regex , text , replace_entities ) == expected
0 commit comments