diff options
author | Jon Janzen <jjjonjanzen@gmail.com> | 2019-11-01 16:45:01 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2019-11-01 16:45:01 (GMT) |
commit | d0d9f7cfa36bafa4e1d9e73eb08835180d376df1 (patch) | |
tree | 2b2f59b9f77462ed26592395cfa1c1d631daddb5 /Lib | |
parent | 9bc94eca0c69a551f928692364a99e9b67c4a45b (diff) | |
download | cpython-d0d9f7cfa36bafa4e1d9e73eb08835180d376df1.zip cpython-d0d9f7cfa36bafa4e1d9e73eb08835180d376df1.tar.gz cpython-d0d9f7cfa36bafa4e1d9e73eb08835180d376df1.tar.bz2 |
Slightly improve plistlib test coverage. (GH-17025)
* Add missing test class (mistake in GH-4455)
* Increase coverage with 4 more test cases
* Rename neg_uid to huge_uid in test_modified_uid_huge
* Replace test_main() with unittest.main()
* Update plistlib docs
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_plistlib.py | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/Lib/test/test_plistlib.py b/Lib/test/test_plistlib.py index d3ef6f8..e82a53c 100644 --- a/Lib/test/test_plistlib.py +++ b/Lib/test/test_plistlib.py @@ -503,6 +503,26 @@ class TestPlistlib(unittest.TestCase): pl2 = plistlib.loads(data) self.assertEqual(dict(pl), dict(pl2)) + def test_dump_invalid_format(self): + with self.assertRaises(ValueError): + plistlib.dumps({}, fmt="blah") + + def test_load_invalid_file(self): + with self.assertRaises(plistlib.InvalidFileException): + plistlib.loads(b"these are not plist file contents") + + def test_modified_uid_negative(self): + neg_uid = UID(1) + neg_uid.data = -1 # dodge the negative check in the constructor + with self.assertRaises(ValueError): + plistlib.dumps(neg_uid, fmt=plistlib.FMT_BINARY) + + def test_modified_uid_huge(self): + huge_uid = UID(1) + huge_uid.data = 2 ** 64 # dodge the size check in the constructor + with self.assertRaises(OverflowError): + plistlib.dumps(huge_uid, fmt=plistlib.FMT_BINARY) + class TestBinaryPlistlib(unittest.TestCase): @@ -655,9 +675,5 @@ class MiscTestCase(unittest.TestCase): support.check__all__(self, plistlib, blacklist=blacklist) -def test_main(): - support.run_unittest(TestPlistlib, TestKeyedArchive, MiscTestCase) - - if __name__ == '__main__': - test_main() + unittest.main() |