| Server IP : 109.234.162.214 / Your IP : 216.73.216.34 Web Server : Apache System : Linux servd162214.srv.odns.fr 4.18.0-372.26.1.lve.1.el8.x86_64 #1 SMP Fri Sep 16 14:08:19 EDT 2022 x86_64 User : carpe ( 1178) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib64/python3.11/site-packages/dill/tests/ |
Upload File : |
#!/usr/bin/env python
#
# Author: Mike McKerns (mmckerns @caltech and @uqfoundation)
# Copyright (c) 2022-2023 The Uncertainty Quantification Foundation.
# License: 3-clause BSD. The full license text is available at:
# - https://github.com/uqfoundation/dill/blob/master/LICENSE
"""
test pickling registered objects
"""
import dill
from dill._objects import failures, registered, succeeds
import warnings
warnings.filterwarnings('ignore')
def check(d, ok=True):
res = []
for k,v in d.items():
try:
z = dill.copy(v)
if ok: res.append(k)
except:
if not ok: res.append(k)
return res
fails = check(failures)
try:
assert not bool(fails)
except AssertionError as e:
print("FAILS: %s" % fails)
raise e from None
register = check(registered, ok=False)
try:
assert not bool(register)
except AssertionError as e:
print("REGISTER: %s" % register)
raise e from None
success = check(succeeds, ok=False)
try:
assert not bool(success)
except AssertionError as e:
print("SUCCESS: %s" % success)
raise e from None
import builtins
import types
q = dill._dill._reverse_typemap
p = {k:v for k,v in q.items() if k not in vars(builtins) and k not in vars(types)}
diff = set(p.keys()).difference(registered.keys())
try:
assert not bool(diff)
except AssertionError as e:
print("DIFF: %s" % diff)
raise e from None
miss = set(registered.keys()).difference(p.keys())
try:
assert not bool(miss)
except AssertionError as e:
print("MISS: %s" % miss)
raise e from None