blob: 9d5f217165f0d89b3a27f29b09bf8439f97faa1d [file] [log] [blame]
Martin v. Löwis47383402007-08-15 07:32:56 +00001import unittest
Benjamin Petersonee8712c2008-05-20 21:35:26 +00002from test import support
Martin v. Löwis47383402007-08-15 07:32:56 +00003
4class PEP3131Test(unittest.TestCase):
5
6 def test_valid(self):
7 class T:
8 ä = 1
9 µ = 2 # this is a compatibility character
10 = 3
Ezio Melottib3aedd42010-11-20 19:04:17 +000011 self.assertEqual(getattr(T, "\xe4"), 1)
12 self.assertEqual(getattr(T, "\u03bc"), 2)
13 self.assertEqual(getattr(T, '\u87d2'), 3)
Martin v. Löwis47383402007-08-15 07:32:56 +000014
15 def test_invalid(self):
16 try:
17 from test import badsyntax_3131
18 except SyntaxError as s:
Ezio Melottib3aedd42010-11-20 19:04:17 +000019 self.assertEqual(str(s),
Martin v. Löwis47383402007-08-15 07:32:56 +000020 "invalid character in identifier (badsyntax_3131.py, line 2)")
21 else:
22 self.fail("expected exception didn't occur")
23
24def test_main():
Benjamin Petersonee8712c2008-05-20 21:35:26 +000025 support.run_unittest(PEP3131Test)
Martin v. Löwis47383402007-08-15 07:32:56 +000026
27if __name__=="__main__":
28 test_main()