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*")))); -*-
2
# -*- mode: python; coding: utf-8 -*-
4
4
# Mandos Monitor - Control and monitor the Mandos server
6
# Copyright © 2008-2019 Teddy Hogeborn
7
# Copyright © 2008-2019 Björn Påhlsson
6
# Copyright © 2008-2018 Teddy Hogeborn
7
# Copyright © 2008-2018 Björn Påhlsson
9
9
# This file is part of Mandos.
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.")
349
fail_count, test_count = doctest.testmod()
350
sys.exit(os.EX_OK if fail_count == 0 else 1)
350
353
bus = dbus.SystemBus()
351
354
mandos_dbus_objc = bus.get_object(busname, server_path)
401
404
if not has_actions(options) and clients:
402
405
if options.verbose or options.dump_json:
403
406
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",
407
"Created", "Interval", "Host", "Fingerprint",
408
"CheckerRunning", "LastEnabled",
409
"ApprovalPending", "ApprovedByDefault",
410
"LastApprovalRequest", "ApprovalDelay",
411
"ApprovalDuration", "Checker",
412
"ExtendedTimeout", "Expires",
410
413
"LastCheckerStatus")
412
415
keywords = defaultkeywords
489
492
client.Approve(dbus.Boolean(False),
490
493
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())
523
496
if __name__ == "__main__":
524
if should_only_run_tests():
525
# Call using ./tdd-python-script --check [--verbose]