2
# -*- mode: python; coding: utf-8 -*-
2
# -*- mode: python; coding: utf-8; after-save-hook: (lambda () (let ((command (if (and (boundp 'tramp-file-name-structure) (string-match (car tramp-file-name-structure) (buffer-file-name))) (tramp-file-name-localname (tramp-dissect-file-name (buffer-file-name))) (buffer-file-name)))) (if (= (shell-command (format "%s --check" (shell-quote-argument command)) "*Test*") 0) (let ((w (get-buffer-window "*Test*"))) (if w (delete-window w)) (kill-buffer "*Test*")) (display-buffer "*Test*")))); -*-
4
4
# Mandos Monitor - Control and monitor the Mandos server
6
# Copyright © 2008-2018 Teddy Hogeborn
7
# Copyright © 2008-2018 Björn Påhlsson
6
# Copyright © 2008-2019 Teddy Hogeborn
7
# Copyright © 2008-2019 Björn Påhlsson
9
9
# This file is part of Mandos.
58
59
"Interval": "Interval",
60
61
"Fingerprint": "Fingerprint",
61
63
"CheckerRunning": "Check Is Running",
62
64
"LastEnabled": "Last Enabled",
63
65
"ApprovalPending": "Approval Is Pending",
344
346
if options.all and not has_actions(options):
345
347
parser.error("--all requires an action.")
349
fail_count, test_count = doctest.testmod()
350
sys.exit(os.EX_OK if fail_count == 0 else 1)
353
350
bus = dbus.SystemBus()
354
351
mandos_dbus_objc = bus.get_object(busname, server_path)
404
401
if not has_actions(options) and clients:
405
402
if options.verbose or options.dump_json:
406
403
keywords = ("Name", "Enabled", "Timeout", "LastCheckedOK",
407
"Created", "Interval", "Host", "Fingerprint",
408
"CheckerRunning", "LastEnabled",
409
"ApprovalPending", "ApprovedByDefault",
410
"LastApprovalRequest", "ApprovalDelay",
411
"ApprovalDuration", "Checker",
412
"ExtendedTimeout", "Expires",
404
"Created", "Interval", "Host", "KeyID",
405
"Fingerprint", "CheckerRunning",
406
"LastEnabled", "ApprovalPending",
407
"ApprovedByDefault", "LastApprovalRequest",
408
"ApprovalDelay", "ApprovalDuration",
409
"Checker", "ExtendedTimeout", "Expires",
413
410
"LastCheckerStatus")
415
412
keywords = defaultkeywords
492
489
client.Approve(dbus.Boolean(False),
493
490
dbus_interface=client_interface)
493
class Test_milliseconds_to_string(unittest.TestCase):
495
self.assertEqual(milliseconds_to_string(93785000),
497
def test_no_days(self):
498
self.assertEqual(milliseconds_to_string(7385000), "02:03:05")
499
def test_all_zero(self):
500
self.assertEqual(milliseconds_to_string(0), "00:00:00")
501
def test_no_fractional_seconds(self):
502
self.assertEqual(milliseconds_to_string(400), "00:00:00")
503
self.assertEqual(milliseconds_to_string(900), "00:00:00")
504
self.assertEqual(milliseconds_to_string(1900), "00:00:01")
507
def should_only_run_tests():
508
parser = argparse.ArgumentParser(add_help=False)
509
parser.add_argument("--check", action='store_true')
510
args, unknown_args = parser.parse_known_args()
511
run_tests = args.check
513
# Remove --check argument from sys.argv
514
sys.argv[1:] = unknown_args
517
# Add all tests from doctest strings
518
def load_tests(loader, tests, none):
520
tests.addTests(doctest.DocTestSuite())
496
523
if __name__ == "__main__":
524
if should_only_run_tests():
525
# Call using ./tdd-python-script --check [--verbose]