summaryrefslogtreecommitdiff
path: root/tests/helpers/gtkdoc_mkhtml2_runner.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/helpers/gtkdoc_mkhtml2_runner.py')
-rw-r--r--tests/helpers/gtkdoc_mkhtml2_runner.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/helpers/gtkdoc_mkhtml2_runner.py b/tests/helpers/gtkdoc_mkhtml2_runner.py
new file mode 100644
index 0000000..fc4dae8
--- /dev/null
+++ b/tests/helpers/gtkdoc_mkhtml2_runner.py
@@ -0,0 +1,38 @@
+# -*- python -*-
+
+from __future__ import print_function
+
+import argparse
+import os
+import shutil
+import sys
+
+from subprocess import call
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser(description='gtkdoc-mkhtml2 runner.')
+
+ parser.add_argument("--binary-dir", type=str, required=True,
+ help='Path to be used as a working directory')
+ parser.add_argument("--change-dir", type=str, default=None,
+ help='Path to be used as a working directory')
+ parser.add_argument("--html-assets", type=str, default=None,
+ help='List of HTML assets, seprated by "@@"')
+
+ options, arguments = parser.parse_known_args()
+
+ arguments.insert(0, os.path.join(options.binary_dir, 'gtkdoc-mkhtml2'))
+
+ if options.change_dir is not None:
+ if not os.path.exists(options.change_dir):
+ os.makedirs(options.change_dir)
+
+ if not options.html_assets is None:
+ for html_asset in options.html_assets.split('@@'):
+ if options.change_dir is not None:
+ html_target = os.path.join(options.change_dir, os.path.basename(html_asset))
+ else:
+ html_target = os.path.join(os.getcwd(), os.path.basename(html_asset))
+ shutil.copyfile(html_asset, html_target)
+
+ sys.exit(call(arguments, cwd=options.change_dir))