Merge pull request #1120 from DavidMStraub/main
This commit is contained in:
commit
1d56e7d47a
31
gramps/__main__.py
Normal file
31
gramps/__main__.py
Normal file
@ -0,0 +1,31 @@
|
||||
#! /usr/bin/env python3
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2012 Benny Malengier
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
|
||||
"""This is a stub to start Gramps.
|
||||
|
||||
It is provided to be able to start gramps as `python3 -m gramps`,
|
||||
e.g. in a virtual environment.
|
||||
"""
|
||||
|
||||
import gramps.grampsapp as app
|
||||
|
||||
if __name__ == "__main__":
|
||||
app.main()
|
@ -54,7 +54,7 @@ from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
_ = glocale.translation.gettext
|
||||
|
||||
_HELP = _("""
|
||||
Usage: gramps.py [OPTION...]
|
||||
Usage: gramps [OPTION...]
|
||||
--load-modules=MODULE1,MODULE2,... Dynamic modules to load
|
||||
|
||||
Help options
|
||||
|
@ -94,6 +94,25 @@ class Test(unittest.TestCase):
|
||||
g = re.search("INDI", content)
|
||||
self.assertTrue(g, "found 'INDI' in output file")
|
||||
|
||||
def test2_exec_cli_m(self):
|
||||
"""Test the `python -m gramps` way to run the CLI."""
|
||||
ifile = min1r
|
||||
ofile = out_ged
|
||||
gcmd = [sys.executable, "-m", "gramps", "-i", ifile, "-e", ofile]
|
||||
process = subprocess.Popen(gcmd,
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE)
|
||||
result_str, err_str = process.communicate()
|
||||
self.assertEqual(process.returncode, 0,
|
||||
"executed CLI command %r" % gcmd)
|
||||
# simple validation o output
|
||||
self.assertTrue(os.path.isfile(ofile), "output file created")
|
||||
with open(ofile) as f:
|
||||
content = f.read()
|
||||
g = re.search("INDI", content)
|
||||
self.assertTrue(g, "found 'INDI' in output file")
|
||||
|
||||
# this verifies that files in the temporary "import dir"
|
||||
# get cleaned before (and after) running a CLI
|
||||
# (eg cleanout stale files from prior crash-runs)
|
||||
|
@ -8,6 +8,7 @@ setup.py
|
||||
# gramps
|
||||
#
|
||||
gramps/__init__.py
|
||||
gramps/__main__.py
|
||||
gramps/version.py
|
||||
#
|
||||
# cli
|
||||
|
Loading…
Reference in New Issue
Block a user