Make rb'' strings work in lib2to3 (#1724)

This partially solves bpo-23894.
This commit is contained in:
Łukasz Langa 2017-05-22 15:19:09 -07:00 committed by GitHub
parent 7bac69d7f1
commit 0c4aca54dc
2 changed files with 37 additions and 7 deletions

View file

@ -320,6 +320,7 @@ class TestVarAnnotations(GrammarTest):
def test_6(self):
self.validate("lst: List[int] = []")
class TestExcept(GrammarTest):
def test_new(self):
s = """
@ -338,6 +339,26 @@ class TestExcept(GrammarTest):
self.validate(s)
class TestStringLiterals(GrammarTest):
prefixes = ("'", '"',
"r'", 'r"', "R'", 'R"',
"u'", 'u"', "U'", 'U"',
"b'", 'b"', "B'", 'B"',
"ur'", 'ur"', "Ur'", 'Ur"',
"uR'", 'uR"', "UR'", 'UR"',
"br'", 'br"', "Br'", 'Br"',
"bR'", 'bR"', "BR'", 'BR"',
"rb'", 'rb"', "Rb'", 'Rb"',
"rB'", 'rB"', "RB'", 'RB"',)
def test_lit(self):
for pre in self.prefixes:
single = "{p}spamspamspam{s}".format(p=pre, s=pre[-1])
self.validate(single)
triple = "{p}{s}{s}eggs{s}{s}{s}".format(p=pre, s=pre[-1])
self.validate(triple)
# Adapted from Python 3's Lib/test/test_grammar.py:GrammarTests.testAtoms
class TestSetLiteral(GrammarTest):
def test_1(self):