Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(2139)

Side by Side Diff: Lib/test/test_strlit.py

Issue 15096: Drop support for the "ur" string prefix
Patch Set: Created 1 year ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 r"""Test correct treatment of various string literals by the parser. 1 r"""Test correct treatment of various string literals by the parser.
2 2
3 There are four types of string literals: 3 There are four types of string literals:
4 4
5 'abc' -- normal str 5 'abc' -- normal str
6 r'abc' -- raw str 6 r'abc' -- raw str
7 b'xyz' -- normal bytes 7 b'xyz' -- normal bytes
8 br'xyz' | rb'xyz' -- raw bytes 8 br'xyz' | rb'xyz' -- raw bytes
9 9
10 The difference between normal and raw strings is of course that in a 10 The difference between normal and raw strings is of course that in a
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 self.assertEqual(eval(r""" br'\u1881' """), b"\\" + b"u1881") 115 self.assertEqual(eval(r""" br'\u1881' """), b"\\" + b"u1881")
116 self.assertEqual(eval(r""" rb'\u1881' """), b"\\" + b"u1881") 116 self.assertEqual(eval(r""" rb'\u1881' """), b"\\" + b"u1881")
117 self.assertRaises(SyntaxError, eval, """ br'\u1881' """) 117 self.assertRaises(SyntaxError, eval, """ br'\u1881' """)
118 self.assertRaises(SyntaxError, eval, """ rb'\u1881' """) 118 self.assertRaises(SyntaxError, eval, """ rb'\u1881' """)
119 self.assertRaises(SyntaxError, eval, """ bb'' """) 119 self.assertRaises(SyntaxError, eval, """ bb'' """)
120 self.assertRaises(SyntaxError, eval, """ rr'' """) 120 self.assertRaises(SyntaxError, eval, """ rr'' """)
121 self.assertRaises(SyntaxError, eval, """ brr'' """) 121 self.assertRaises(SyntaxError, eval, """ brr'' """)
122 self.assertRaises(SyntaxError, eval, """ bbr'' """) 122 self.assertRaises(SyntaxError, eval, """ bbr'' """)
123 self.assertRaises(SyntaxError, eval, """ rrb'' """) 123 self.assertRaises(SyntaxError, eval, """ rrb'' """)
124 self.assertRaises(SyntaxError, eval, """ rbb'' """) 124 self.assertRaises(SyntaxError, eval, """ rbb'' """)
125
126 def test_eval_str_u(self):
127 self.assertEqual(eval(""" u'x' """), 'x')
128 self.assertEqual(eval(""" U'\u00e4' """), 'ä')
129 self.assertEqual(eval(""" u'\N{LATIN SMALL LETTER A WITH DIAERESIS}' """ ), 'ä')
130 self.assertRaises(SyntaxError, eval, """ ur'' """)
131 self.assertRaises(SyntaxError, eval, """ ru'' """)
storchaka 2012/06/17 18:35:21 Are ub'' and bu'' tested somewhere?
125 132
126 def check_encoding(self, encoding, extra=""): 133 def check_encoding(self, encoding, extra=""):
127 modname = "xx_" + encoding.replace("-", "_") 134 modname = "xx_" + encoding.replace("-", "_")
128 fn = os.path.join(self.tmpdir, modname + ".py") 135 fn = os.path.join(self.tmpdir, modname + ".py")
129 f = open(fn, "w", encoding=encoding) 136 f = open(fn, "w", encoding=encoding)
130 try: 137 try:
131 f.write(TEMPLATE % encoding) 138 f.write(TEMPLATE % encoding)
132 f.write(extra) 139 f.write(extra)
133 finally: 140 finally:
134 f.close() 141 f.close()
(...skipping 19 matching lines...) Expand all
154 161
155 def test_file_latin9(self): 162 def test_file_latin9(self):
156 self.check_encoding("latin9") 163 self.check_encoding("latin9")
157 164
158 165
159 def test_main(): 166 def test_main():
160 test.support.run_unittest(__name__) 167 test.support.run_unittest(__name__)
161 168
162 if __name__ == "__main__": 169 if __name__ == "__main__":
163 test_main() 170 test_main()
OLDNEW
« no previous file with comments | « Doc/reference/lexical_analysis.rst ('k') | Misc/HISTORY » ('j') | Parser/tokenizer.c » ('J')

RSS Feeds Recent Issues | This issue
This is Rietveld cbc36f91f3f7