summaryrefslogtreecommitdiff
path: root/Lib
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2014-03-06 11:36:15 +0200
committerSerhiy Storchaka <storchaka@gmail.com>2014-03-06 11:36:15 +0200
commit97003cb23be72520afb2c1c036178b69f0885746 (patch)
tree9c4d2df5d691ad32bdc717d8733ac52fbafcc3fe /Lib
parentdbdb5f9ed14e23958a46feac58b55acff3e6e252 (diff)
parentc6ac42ae76cbfa526f73078e8faa70f9c78c9c88 (diff)
downloadcpython-97003cb23be72520afb2c1c036178b69f0885746.tar.gz
Issue #20283: RE pattern methods now accept the string keyword parameters
as documented. The pattern and source keyword parameters are left as deprecated aliases.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_re.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py
index a229e235ca..33ccd15398 100644
--- a/Lib/test/test_re.py
+++ b/Lib/test/test_re.py
@@ -1205,6 +1205,24 @@ class ReTests(unittest.TestCase):
self.assertEqual(out.getvalue().splitlines(),
['literal 102 ', 'literal 111 ', 'literal 111 '])
+ def test_keyword_parameters(self):
+ # Issue #20283: Accepting the string keyword parameter.
+ pat = re.compile(r'(ab)')
+ self.assertEqual(
+ pat.match(string='abracadabra', pos=7, endpos=10).span(), (7, 9))
+ self.assertEqual(
+ pat.fullmatch(string='abracadabra', pos=7, endpos=9).span(), (7, 9))
+ self.assertEqual(
+ pat.search(string='abracadabra', pos=3, endpos=10).span(), (7, 9))
+ self.assertEqual(
+ pat.findall(string='abracadabra', pos=3, endpos=10), ['ab'])
+ self.assertEqual(
+ pat.split(string='abracadabra', maxsplit=1),
+ ['', 'ab', 'racadabra'])
+ self.assertEqual(
+ pat.scanner(string='abracadabra', pos=3, endpos=10).search().span(),
+ (7, 9))
+
class PatternReprTests(unittest.TestCase):
def check(self, pattern, expected):