4
4
# Mandos Monitor - Control and monitor the Mandos server
6
# Copyright © 2008-2019 Teddy Hogeborn
7
# Copyright © 2008-2019 Björn Påhlsson
9
# This file is part of Mandos.
11
# Mandos is free software: you can redistribute it and/or modify it
12
# under the terms of the GNU General Public License as published by
6
# Copyright © 2008-2016 Teddy Hogeborn
7
# Copyright © 2008-2016 Björn Påhlsson
9
# This program is free software: you can redistribute it and/or modify
10
# it under the terms of the GNU General Public License as published by
13
11
# the Free Software Foundation, either version 3 of the License, or
14
12
# (at your option) any later version.
16
# Mandos is distributed in the hope that it will be useful, but
17
# WITHOUT ANY WARRANTY; without even the implied warranty of
14
# This program is distributed in the hope that it will be useful,
15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
18
16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
17
# GNU General Public License for more details.
21
19
# You should have received a copy of the GNU General Public License
22
# along with Mandos. If not, see <http://www.gnu.org/licenses/>.
20
# along with this program. If not, see
21
# <http://www.gnu.org/licenses/>.
24
23
# Contact the authors at <mandos@recompile.se>.
59
58
"Interval": "Interval",
61
60
"Fingerprint": "Fingerprint",
63
61
"CheckerRunning": "Check Is Running",
64
62
"LastEnabled": "Last Enabled",
65
63
"ApprovalPending": "Approval Is Pending",
346
344
if options.all and not has_actions(options):
347
345
parser.error("--all requires an action.")
348
fail_count, test_count = doctest.testmod()
349
sys.exit(os.EX_OK if fail_count == 0 else 1)
350
352
bus = dbus.SystemBus()
351
353
mandos_dbus_objc = bus.get_object(busname, server_path)
401
403
if not has_actions(options) and clients:
402
404
if options.verbose or options.dump_json:
403
405
keywords = ("Name", "Enabled", "Timeout", "LastCheckedOK",
404
"Created", "Interval", "Host", "KeyID",
405
"Fingerprint", "CheckerRunning",
406
"LastEnabled", "ApprovalPending",
407
"ApprovedByDefault", "LastApprovalRequest",
408
"ApprovalDelay", "ApprovalDuration",
409
"Checker", "ExtendedTimeout", "Expires",
406
"Created", "Interval", "Host", "Fingerprint",
407
"CheckerRunning", "LastEnabled",
408
"ApprovalPending", "ApprovedByDefault",
409
"LastApprovalRequest", "ApprovalDelay",
410
"ApprovalDuration", "Checker",
411
"ExtendedTimeout", "Expires",
410
412
"LastCheckerStatus")
412
414
keywords = defaultkeywords
489
491
client.Approve(dbus.Boolean(False),
490
492
dbus_interface=client_interface)
493
def should_only_run_tests():
494
parser = argparse.ArgumentParser(add_help=False)
495
parser.add_argument("--check", action='store_true')
496
args, unknown_args = parser.parse_known_args()
497
run_tests = args.check
499
# Remove --check argument from sys.argv
500
sys.argv[1:] = unknown_args
503
# Add all tests from doctest strings
504
def load_tests(loader, tests, none):
506
tests.addTests(doctest.DocTestSuite())
509
495
if __name__ == "__main__":
510
if should_only_run_tests():
511
# Call using ./tdd-python-script --check [--verbose]