forked from M-Labs/artiq
1
0
Fork 0

artiq/test/{not,harness}.py: usual CLI handling

This commit is contained in:
Robert Jördens 2016-01-18 15:43:57 -07:00
parent d7e4783cae
commit a1201252e2
2 changed files with 26 additions and 17 deletions

View File

@ -11,21 +11,25 @@ emulate the same behavior when invoked under lit.
import sys, os, argparse, importlib import sys, os, argparse, importlib
parser = argparse.ArgumentParser(description=__doc__) def main():
parser.add_argument('-m', metavar='mod', type=str, parser = argparse.ArgumentParser(description=__doc__)
help='run library module as a script') parser.add_argument('-m', metavar='mod', type=str,
parser.add_argument('args', type=str, nargs='+', help='run library module as a script')
help='arguments passed to program in sys.argv[1:]') parser.add_argument('args', type=str, nargs='+',
args = parser.parse_args(sys.argv[1:]) help='arguments passed to program in sys.argv[1:]')
args = parser.parse_args(sys.argv[1:])
artiq_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) artiq_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
sys.path.insert(1, artiq_path) sys.path.insert(1, artiq_path)
if args.m: if args.m:
sys.argv[1:] = args.args sys.argv[1:] = args.args
importlib.import_module(args.m).main() importlib.import_module(args.m).main()
else: else:
sys.argv[1:] = args.args[1:] sys.argv[1:] = args.args[1:]
with open(args.args[0]) as f: with open(args.args[0]) as f:
code = compile(f.read(), args.args[0], 'exec') code = compile(f.read(), args.args[0], 'exec')
exec(code) exec(code)
if __name__ == "__main__":
main()

View File

@ -1,2 +1,7 @@
import sys, subprocess import sys, subprocess
exit(not subprocess.call(sys.argv[1:]))
def main():
exit(not subprocess.call(sys.argv[1:]))
if __name__ == "__main__":
main()