diff options
author | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
---|---|---|
committer | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
commit | 4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch) | |
tree | ee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py | |
parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
download | gn-ai-master.tar.gz |
Diffstat (limited to '.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py b/.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py new file mode 100644 index 00000000..f7248ca7 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py @@ -0,0 +1,30 @@ +import pickle + +from .. import loadi + + +def generate_org_lines(num_top_nodes, depth=3, nodes_per_level=1, _level=1): + if depth == 0: + return + for i in range(num_top_nodes): + yield ("*" * _level) + ' {0}-th heading of level {1}'.format(i, _level) + for child in generate_org_lines( + nodes_per_level, depth - 1, nodes_per_level, _level + 1): + yield child + + +def num_generate_org_lines(num_top_nodes, depth=3, nodes_per_level=1): + if depth == 0: + return 0 + return num_top_nodes * ( + 1 + num_generate_org_lines( + nodes_per_level, depth - 1, nodes_per_level)) + + +def test_picklable() -> None: + num = 1000 + depth = 3 + nodes_per_level = 1 + root = loadi(generate_org_lines(num, depth, nodes_per_level)) + assert sum(1 for _ in root) == num_generate_org_lines(num, depth, nodes_per_level) + 1 + pickle.dumps(root) # should not fail |