home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / test_module.py < prev    next >
Text File  |  2003-12-30  |  1KB  |  49 lines

  1. # Test the module type
  2.  
  3. from test.test_support import verify, vereq, verbose, TestFailed
  4.  
  5. import sys
  6. module = type(sys)
  7.  
  8. # An uninitialized module has no __dict__ or __name__, and __doc__ is None
  9. foo = module.__new__(module)
  10. verify(foo.__dict__ is None)
  11. try:
  12.     s = foo.__name__
  13. except AttributeError:
  14.     pass
  15. else:
  16.     raise TestFailed, "__name__ = %s" % repr(s)
  17. vereq(foo.__doc__, module.__doc__)
  18.  
  19. # Regularly initialized module, no docstring
  20. foo = module("foo")
  21. vereq(foo.__name__, "foo")
  22. vereq(foo.__doc__, None)
  23. vereq(foo.__dict__, {"__name__": "foo", "__doc__": None})
  24.  
  25. # ASCII docstring
  26. foo = module("foo", "foodoc")
  27. vereq(foo.__name__, "foo")
  28. vereq(foo.__doc__, "foodoc")
  29. vereq(foo.__dict__, {"__name__": "foo", "__doc__": "foodoc"})
  30.  
  31. # Unicode docstring
  32. foo = module("foo", u"foodoc\u1234")
  33. vereq(foo.__name__, "foo")
  34. vereq(foo.__doc__, u"foodoc\u1234")
  35. vereq(foo.__dict__, {"__name__": "foo", "__doc__": u"foodoc\u1234"})
  36.  
  37. # Reinitialization should not replace the __dict__
  38. foo.bar = 42
  39. d = foo.__dict__
  40. foo.__init__("foo", "foodoc")
  41. vereq(foo.__name__, "foo")
  42. vereq(foo.__doc__, "foodoc")
  43. vereq(foo.bar, 42)
  44. vereq(foo.__dict__, {"__name__": "foo", "__doc__": "foodoc", "bar": 42})
  45. verify(foo.__dict__ is d)
  46.  
  47. if verbose:
  48.     print "All OK"
  49.