From dface638c147a5e6bf83115e63a39e669647821f Mon Sep 17 00:00:00 2001 From: Andrew Schoen Date: Mon, 17 Nov 2014 16:46:16 -0600 Subject: [PATCH] port teuthology-ls to use docopt instead of argparse Signed-off-by: Andrew Schoen --- scripts/ls.py | 33 +++++++++++++++------------------ scripts/test/test_ls.py | 10 ++++++++++ teuthology/ls.py | 2 +- 3 files changed, 26 insertions(+), 19 deletions(-) diff --git a/scripts/ls.py b/scripts/ls.py index 9acfa94e35..5c9b33be36 100644 --- a/scripts/ls.py +++ b/scripts/ls.py @@ -1,22 +1,19 @@ -import argparse -import teuthology.ls +""" +usage: teuthology-ls [-h] [-v] +List teuthology job results -def main(): - teuthology.ls.main(parse_args()) +positional arguments: + path under which to archive results +optional arguments: + -h, --help show this help message and exit + -v, --verbose show reasons tests failed +""" +import docopt +import teuthology.ls -def parse_args(): - parser = argparse.ArgumentParser(description='List teuthology job results') - parser.add_argument( - 'archive_dir', - metavar='DIR', - default='.', - help='path under which to archive results', - ) - parser.add_argument( - '-v', '--verbose', - action='store_true', default=False, - help='show reasons tests failed', - ) - return parser.parse_args() + +def main(): + args = docopt.docopt(__doc__) + teuthology.ls.main(args) diff --git a/scripts/test/test_ls.py b/scripts/test/test_ls.py index 6de10ce6c3..d0e4d81451 100644 --- a/scripts/test/test_ls.py +++ b/scripts/test/test_ls.py @@ -1,5 +1,15 @@ +import docopt + from script import Script +from scripts import ls + +doc = ls.__doc__ class TestLs(Script): script_name = 'teuthology-ls' + + def test_args(self): + args = docopt.docopt(doc, ["--verbose", "some/archive/dir"]) + assert args["--verbose"] + assert args[""] == "some/archive/dir" diff --git a/teuthology/ls.py b/teuthology/ls.py index 8df818b0ac..3b15efbc3f 100644 --- a/teuthology/ls.py +++ b/teuthology/ls.py @@ -7,7 +7,7 @@ from .job_status import get_status def main(args): - return ls(args.archive_dir, args.verbose) + return ls(args[""], args["--verbose"]) def ls(archive_dir, verbose): -- 2.39.5