clean up small items, typos, change command name, clean up tests in re: exit code testing.

This commit is contained in:
James Kafader 2017-10-03 16:13:42 -07:00
parent df7c0b8e32
commit e1b4153712
3 changed files with 8 additions and 7 deletions

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python #!/usr/bin/env python
''' '''
doublethink/orm.py - rethinkdb ORM Command Line Interface doublethink/cli.py - doublethink Command Line Tools
Copyright (C) 2017 Internet Archive Copyright (C) 2017 Internet Archive
@ -30,7 +30,7 @@ def purge_stale_services(argv=None):
argv = argv or sys.argv argv = argv or sys.argv
arg_parser = argparse.ArgumentParser( arg_parser = argparse.ArgumentParser(
prog=os.path.basename(argv[0]), prog=os.path.basename(argv[0]),
description='purge-stale-services: utility to periodically purge stale entries from the "services" table.') description='doublethink-purge-stale-services: utility to periodically purge stale entries from the "services" table.')
arg_parser.add_argument("-d", "--rethinkdb-db", required=True, arg_parser.add_argument("-d", "--rethinkdb-db", required=True,
dest="database", dest="database",
@ -55,4 +55,4 @@ def purge_stale_services(argv=None):
rethinker = doublethink.Rethinker(servers=args.servers, db=args.database) rethinker = doublethink.Rethinker(servers=args.servers, db=args.database)
registry = doublethink.services.ServiceRegistry(rethinker) registry = doublethink.services.ServiceRegistry(rethinker)
registry.purge_stale_services() registry.purge_stale_services()
sys.exit(0) return 0

View File

@ -20,7 +20,7 @@ setuptools.setup(
'README.rst', mode='r', encoding='utf-8').read(), 'README.rst', mode='r', encoding='utf-8').read(),
entry_points={ entry_points={
'console_scripts': [ 'console_scripts': [
'purge-stale-services=doublethink.cli:purge_stale_services', 'doublethink-purge-stale-services=doublethink.cli:purge_stale_services',
] ]
}, },
) )

View File

@ -50,14 +50,15 @@ def rr():
def test_cli(capsys, rr): def test_cli(capsys, rr):
entrypoint = pkg_resources.get_entry_map( entrypoint = pkg_resources.get_entry_map(
'doublethink')['console_scripts']['purge-stale-services'] 'doublethink')['console_scripts']['doublethink-purge-stale-services']
callable = entrypoint.resolve() callable = entrypoint.resolve()
with pytest.raises(SystemExit) as exit: with pytest.raises(SystemExit) as exit:
callable(['purge-stale-services']) callable(['doublethink-purge-stale-services'])
print(dir(exit)) print(dir(exit))
assert exit.value.code != 0 assert exit.value.code != 0
out, err = capsys.readouterr() out, err = capsys.readouterr()
with pytest.raises(SystemExit) as exit: with pytest.raises(SystemExit) as exit:
callable(['purge-stale-services', '-d', 'test']) # this wrap with sys.exit matches what occurs in the generated command
sys.exit(callable(['doublethink-purge-stale-services', '-d', 'test']))
assert exit.value.code == 0 assert exit.value.code == 0
out, err = capsys.readouterr() out, err = capsys.readouterr()