diff options
-rw-r--r-- | Lib/test/test_plistlib.py | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/Lib/test/test_plistlib.py b/Lib/test/test_plistlib.py new file mode 100644 index 0000000..bf070c7 --- /dev/null +++ b/Lib/test/test_plistlib.py @@ -0,0 +1,59 @@ +# Copyright (C) 2003 Python Software Foundation + +import unittest +import plistlib +import os +from test import test_support + +class TestPlistlib(unittest.TestCase): + + def tearDown(self): + try: + os.unlink(test_support.TESTFN) + except: + pass + + def _create(self): + pl = plistlib.Plist( + aString="Doodah", + aList=["A", "B", 12, 32.1, [1, 2, 3]], + aFloat = 0.1, + anInt = 728, + aDict=plistlib.Dict( + anotherString="<hello & hi there!>", + aUnicodeValue=u'M\xe4ssig, Ma\xdf', + aTrueValue=True, + aFalseValue=False, + ), + someData = plistlib.Data("<binary gunk>"), + someMoreData = plistlib.Data("<lots of binary gunk>" * 10), + ) + pl['anotherInt'] = 42 + try: + from xml.utils.iso8601 import parse + import time + except ImportError: + pass + else: + pl['aDate'] = plistlib.Date(time.mktime(time.gmtime())) + return pl + + def test_create(self): + pl = self._create() + self.assertEqual(pl["aString"], "Doodah") + self.assertEqual(pl["aDict"]["aFalseValue"], False) + + def test_io(self): + pl = self._create() + pl.write(test_support.TESTFN) + pl2 = plistlib.Plist.fromFile(test_support.TESTFN) + self.assertEqual(dict(pl), dict(pl2)) + + + +def test_main(): + test_support.run_unittest(TestPlistlib) + + +if __name__ == '__main__': + test_main() |