1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
"""
[ 529242 ] Python singletons deserialization bug
"""
import support
from java.io import *
from org.python.util import *
SINGL= None
#SINGL= Ellipsis
class Test(Serializable):
def __init__(self):
self.attr = SINGL
def test(self):
if self.attr is not SINGL:
raise support.TestError("Singleton not unique")
if self.attr != SINGL:
raise support.TestError("Singleton not unique")
def load(path):
file = File(path)
fileIn = FileInputStream(file)
pyIn = PythonObjectInputStream(fileIn)
pyObj = pyIn.readObject()
pyIn.close()
return pyObj
def save(obj, path):
fileOut = FileOutputStream(path)
objOut = ObjectOutputStream(fileOut)
objOut.writeObject(obj)
objOut.flush()
objOut.close()
#print "Testing initial object..."
a = Test()
a.test()
save(a, "test368.out")
b = load("test368.out")
#print "Testing deserialized object..."
b.test()
|