diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..02a1674 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "extra-tests/organice"] + path = extra-tests/organice + url = https://github.com/200ok-ch/organice.git diff --git a/extra-tests/check_all.sh b/extra-tests/check_all.sh new file mode 100644 index 0000000..d802fb1 --- /dev/null +++ b/extra-tests/check_all.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +set -eu + +# Get to the script's directory +cd "`dirname $0`" + +# Update the extra submodules +git submodule update --init --recursive . + +# Run all checks +python3 org_dom_check.py . diff --git a/extra-tests/org_dom_check.py b/extra-tests/org_dom_check.py new file mode 100644 index 0000000..8197bf8 --- /dev/null +++ b/extra-tests/org_dom_check.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 + +import os +import sys + +import org_dom + +top = sys.argv[1] +count = 0 + +for root, dirs, files in os.walk(top): + for name in files: + if ".org" not in name: + continue + + path = os.path.join(root, name) + count += 1 + try: + org_dom.load(open(path), extra_cautious=True) + except Exception as err: + import traceback + + traceback.print_exc() + print(f"== On {path}") + sys.exit(1) + +print("[OK] Check passed on {} files".format(count)) diff --git a/extra-tests/organice b/extra-tests/organice new file mode 160000 index 0000000..3c14220 --- /dev/null +++ b/extra-tests/organice @@ -0,0 +1 @@ +Subproject commit 3c142203a6617253a1008e368af6971fc6f936a1