home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 July / maximum-cd-2011-07.iso / DiscContents / LibO_3.3.2_Win_x86_install_multi.exe / libreoffice1.cab / test_global.py < prev    next >
Encoding:
Python Source  |  2011-03-15  |  955 b   |  52 lines

  1. """Verify that warnings are issued for global statements following use."""
  2.  
  3. from test.test_support import run_unittest, check_syntax_error
  4. import unittest
  5.  
  6. import warnings
  7. warnings.filterwarnings("error", module="<test string>")
  8.  
  9. class GlobalTests(unittest.TestCase):
  10.  
  11.     def test1(self):
  12.         prog_text_1 = """\
  13. def wrong1():
  14.     a = 1
  15.     b = 2
  16.     global a
  17.     global b
  18. """
  19.         check_syntax_error(self, prog_text_1)
  20.  
  21.     def test2(self):
  22.         prog_text_2 = """\
  23. def wrong2():
  24.     print x
  25.     global x
  26. """
  27.         check_syntax_error(self, prog_text_2)
  28.  
  29.     def test3(self):
  30.         prog_text_3 = """\
  31. def wrong3():
  32.     print x
  33.     x = 2
  34.     global x
  35. """
  36.         check_syntax_error(self, prog_text_3)
  37.  
  38.     def test4(self):
  39.         prog_text_4 = """\
  40. global x
  41. x = 2
  42. """
  43.         # this should work
  44.         compile(prog_text_4, "<test string>", "exec")
  45.  
  46.  
  47. def test_main():
  48.     run_unittest(GlobalTests)
  49.  
  50. if __name__ == "__main__":
  51.     test_main()
  52.