aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/orgparse/tests/test_hugedata.py
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are hereHEADmaster
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.py30
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