X7ROOT File Manager
Current Path:
/opt/cloudlinux/venv/lib/python3.11/site-packages/dill/tests
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
dill
/
tests
/
ðŸ“
..
📄
__init__.py
(501 B)
📄
__main__.py
(899 B)
ðŸ“
__pycache__
📄
test_abc.py
(3.75 KB)
📄
test_check.py
(1.36 KB)
📄
test_classdef.py
(6.99 KB)
📄
test_dataclasses.py
(890 B)
📄
test_detect.py
(3.99 KB)
📄
test_dictviews.py
(1.31 KB)
📄
test_diff.py
(2.6 KB)
📄
test_extendpickle.py
(1.28 KB)
📄
test_fglobals.py
(1.64 KB)
📄
test_file.py
(13.26 KB)
📄
test_functions.py
(4.17 KB)
📄
test_functors.py
(930 B)
📄
test_logger.py
(2.33 KB)
📄
test_mixins.py
(3.91 KB)
📄
test_module.py
(1.9 KB)
📄
test_moduledict.py
(1.15 KB)
📄
test_nested.py
(3.07 KB)
📄
test_objects.py
(1.79 KB)
📄
test_properties.py
(1.31 KB)
📄
test_pycapsule.py
(1.38 KB)
📄
test_recursive.py
(4.08 KB)
📄
test_registered.py
(1.54 KB)
📄
test_restricted.py
(783 B)
📄
test_selected.py
(3.14 KB)
📄
test_session.py
(9.92 KB)
📄
test_source.py
(5.89 KB)
📄
test_temp.py
(2.56 KB)
📄
test_weakref.py
(1.56 KB)
Editing: test_nested.py
#!/usr/bin/env python # # Author: Mike McKerns (mmckerns @caltech and @uqfoundation) # Copyright (c) 2008-2016 California Institute of Technology. # Copyright (c) 2016-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 dill's ability to handle nested functions """ import os import math import dill as pickle pickle.settings['recurse'] = True # the nested function: pickle should fail here, but dill is ok. def adder(augend): zero = [0] def inner(addend): return addend + augend + zero[0] return inner # rewrite the nested function using a class: standard pickle should work here. class cadder(object): def __init__(self, augend): self.augend = augend self.zero = [0] def __call__(self, addend): return addend + self.augend + self.zero[0] # rewrite again, but as an old-style class class c2adder: def __init__(self, augend): self.augend = augend self.zero = [0] def __call__(self, addend): return addend + self.augend + self.zero[0] # some basic class stuff class basic(object): pass class basic2: pass x = 5 y = 1 def test_basic(): a = [0, 1, 2] pa = pickle.dumps(a) pmath = pickle.dumps(math) #XXX: FAILS in pickle pmap = pickle.dumps(map) # ... la = pickle.loads(pa) lmath = pickle.loads(pmath) lmap = pickle.loads(pmap) assert list(map(math.sin, a)) == list(lmap(lmath.sin, la)) def test_basic_class(): pbasic2 = pickle.dumps(basic2) _pbasic2 = pickle.loads(pbasic2)() pbasic = pickle.dumps(basic) _pbasic = pickle.loads(pbasic)() def test_c2adder(): pc2adder = pickle.dumps(c2adder) pc2add5 = pickle.loads(pc2adder)(x) assert pc2add5(y) == x+y def test_pickled_cadder(): pcadder = pickle.dumps(cadder) pcadd5 = pickle.loads(pcadder)(x) assert pcadd5(y) == x+y def test_raw_adder_and_inner(): add5 = adder(x) assert add5(y) == x+y def test_pickled_adder(): padder = pickle.dumps(adder) padd5 = pickle.loads(padder)(x) assert padd5(y) == x+y def test_pickled_inner(): add5 = adder(x) pinner = pickle.dumps(add5) #XXX: FAILS in pickle p5add = pickle.loads(pinner) assert p5add(y) == x+y def test_moduledict_where_not_main(): try: from . import test_moduledict except ImportError: import test_moduledict name = 'test_moduledict.py' if os.path.exists(name) and os.path.exists(name+'c'): os.remove(name+'c') if os.path.exists(name) and hasattr(test_moduledict, "__cached__") \ and os.path.exists(test_moduledict.__cached__): os.remove(getattr(test_moduledict, "__cached__")) if os.path.exists("__pycache__") and not os.listdir("__pycache__"): os.removedirs("__pycache__") if __name__ == '__main__': test_basic() test_basic_class() test_c2adder() test_pickled_cadder() test_raw_adder_and_inner() test_pickled_adder() test_pickled_inner() test_moduledict_where_not_main()
Upload File
Create Folder