For issue #16076: merge 3.3

This commit is contained in:
Eli Bendersky 2012-12-30 06:18:19 -08:00
commit 2c53a78a99
1 changed files with 15 additions and 0 deletions

View File

@ -16,6 +16,7 @@
import html import html
import io import io
import pickle
import sys import sys
import unittest import unittest
import weakref import weakref
@ -1768,6 +1769,20 @@ class BasicElementTest(unittest.TestCase):
self.assertEqual(flag, True) self.assertEqual(flag, True)
self.assertEqual(wref(), None) self.assertEqual(wref(), None)
def test_pickle(self):
# For now this test only works for the Python version of ET,
# so set sys.modules accordingly because pickle uses __import__
# to load the __module__ of the class.
if pyET:
sys.modules['xml.etree.ElementTree'] = pyET
else:
raise unittest.SkipTest('only for the Python version')
e1 = ET.Element('foo', bar=42)
s = pickle.dumps(e1)
e2 = pickle.loads(s)
self.assertEqual(e2.tag, 'foo')
self.assertEqual(e2.attrib['bar'], 42)
class ElementTreeTest(unittest.TestCase): class ElementTreeTest(unittest.TestCase):
def test_istype(self): def test_istype(self):