PHP 8.2.30
Preview: test_dictviews.py Size: 1.31 KB
//opt/cloudlinux/venv/lib/python3.11/site-packages/dill/tests/test_dictviews.py

#!/usr/bin/env python
#
# Author: Mike McKerns (mmckerns @caltech and @uqfoundation)
# Author: Anirudh Vegesana (avegesan@cs.stanford.edu)
# Copyright (c) 2021-2023 The Uncertainty Quantification Foundation.
# License: 3-clause BSD.  The full license text is available at:
#  - https://github.com/uqfoundation/dill/blob/master/LICENSE

import dill
from dill._dill import OLD310, MAPPING_PROXY_TRICK, DictProxyType

def test_dictproxy():
    assert dill.copy(DictProxyType({'a': 2}))

def test_dictviews():
    x = {'a': 1}
    assert dill.copy(x.keys())
    assert dill.copy(x.values())
    assert dill.copy(x.items())

def test_dictproxy_trick():
    if not OLD310 and MAPPING_PROXY_TRICK:
        x = {'a': 1}
        all_views = (x.values(), x.items(), x.keys(), x)
        seperate_views = dill.copy(all_views)
        new_x = seperate_views[-1]
        new_x['b'] = 2
        new_x['c'] = 1
        assert len(new_x) == 3 and len(x) == 1
        assert len(seperate_views[0]) == 3 and len(all_views[0]) == 1
        assert len(seperate_views[1]) == 3 and len(all_views[1]) == 1
        assert len(seperate_views[2]) == 3 and len(all_views[2]) == 1
        assert dict(all_views[1]) == x
        assert dict(seperate_views[1]) == new_x

if __name__ == '__main__':
    test_dictproxy()
    test_dictviews()
    test_dictproxy_trick()

Directory Contents

Dirs: 1 × Files: 30

Name Size Perms Modified Actions
- drwxr-xr-x 2026-02-06 08:01:08
Edit Download
3.75 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.36 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
6.99 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
890 B lrw-r--r-- 2026-01-20 13:01:48
Edit Download
3.99 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.31 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
2.60 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.28 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.64 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
13.26 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
4.17 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
930 B lrw-r--r-- 2026-01-20 13:01:48
Edit Download
2.33 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
3.91 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.90 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.15 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
3.07 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.79 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.31 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.38 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
4.08 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.54 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
783 B lrw-r--r-- 2026-01-20 13:01:48
Edit Download
3.14 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
9.92 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
5.89 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
2.56 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
1.56 KB lrw-r--r-- 2026-01-20 13:01:48
Edit Download
501 B lrw-r--r-- 2026-01-20 13:01:48
Edit Download
899 B lrw-r--r-- 2026-01-20 13:01:48
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).