From 271cb95ec3e12d6f97852491bc723c5060ce4b75 Mon Sep 17 00:00:00 2001 From: Philipp A Date: Tue, 12 Nov 2019 22:57:02 +0100 Subject: Run python tests --- build_tests.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 build_tests.py (limited to 'build_tests.py') diff --git a/build_tests.py b/build_tests.py new file mode 100644 index 0000000..3fe4e9a --- /dev/null +++ b/build_tests.py @@ -0,0 +1,27 @@ +import sys +import json +from ast import literal_eval +from urllib.request import urlopen + +out = sys.argv[1] +url_base = 'https://sourceforge.net/p/docutils/code/HEAD/tree/trunk/docutils' + +with urlopen(f'{url_base}/test/test_writers/test_html5_polyglot_parts.py?format=raw') as con: + code = con.read().decode() + +code = code[code.find('totest ='):code.find('if __name__')] +exec(code) +with open(out, 'w') as f: + t = 0 + for k, (opts, tests) in totest.items(): + for rst, result_code in tests: + result = literal_eval(result_code)['fragment'] + rst, result = (r.replace('"', r'\"') for r in (rst, result)) + f.write(f'''\ +#[test] +fn test_{t:02}() {{ + check_renders_to("{rst}", "{result.strip()}"); +}} +''') + t += 1 + -- cgit v1.2.3