Beispiel #1
0
 def test_version(self):
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(["-v"])
     assert exc.value.code == 0
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(["--version"])
     assert exc.value.code == 0
Beispiel #2
0
 def test_version(self):
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(["-v"])
     assert exc.value.code == 0
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(["--version"])
     assert exc.value.code == 0
Beispiel #3
0
 def test_version(self):
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(['-v'])
     assert str(exc.value) == '0'
     with pytest.raises(SystemExit) as exc:
         parse_cmd_args(['--version'])
     assert str(exc.value) == '0'
Beispiel #4
0
def run():
    """Create the asyncio loop and start the server."""
    args = parse_cmd_args(sys.argv[1:])
    configure_logs(args)
    logger = logging.getLogger('blackhole')
    if args.test:
        config_test(args)
    try:
        config = Config(args.config_file).load().test()
    except ConfigException as err:
        logger.fatal(err)
        raise SystemExit(os.EX_USAGE)
    if args.background and not config.pidfile:
        logger.fatal('Cannot run in the background without a pidfile.')
        raise SystemExit(os.EX_USAGE)
    loop = asyncio.get_event_loop()
    loop.add_signal_handler(signal.SIGINT, loop.stop)
    start_servers()
    setgid()
    setuid()
    if args.background:
        try:
            Daemon(config.pidfile).daemonize()
        except DaemonException as err:
            stop_servers()
            logger.fatal(err)
            raise SystemExit(os.EX_USAGE)
    try:
        loop.run_forever()
    except KeyboardInterrupt:
        pass
    stop_servers()
    raise SystemExit(os.EX_OK)
Beispiel #5
0
def run():
    """Create the asyncio loop and start the server."""
    args = parse_cmd_args(sys.argv[1:])
    configure_logs(args)
    logger = logging.getLogger('blackhole')
    if args.test:
        config_test(args)
    try:
        config = Config(args.config_file).load().test()
    except ConfigException as err:
        logger.fatal(err)
        raise SystemExit(os.EX_USAGE)
    if args.background and not config.pidfile:
        logger.fatal('Cannot run in the background without a pidfile.')
        raise SystemExit(os.EX_USAGE)
    loop = asyncio.get_event_loop()
    loop.add_signal_handler(signal.SIGINT, loop.stop)
    start_servers()
    setgid()
    setuid()
    if args.background:
        try:
            Daemon(config.pidfile).daemonize()
        except DaemonException as err:
            stop_servers()
            logger.fatal(err)
            raise SystemExit(os.EX_USAGE)
    try:
        loop.run_forever()
    except KeyboardInterrupt:
        pass
    stop_servers()
    raise SystemExit(os.EX_OK)
Beispiel #6
0
 def test_test(self):
     parser = parse_cmd_args(["-t"])
     assert parser.test is True
     parser = parse_cmd_args(["--test"])
     assert parser.test is True
Beispiel #7
0
 def test_default_conf(self):
     parser = parse_cmd_args(["-c/fake/file.conf"])
     assert parser.config_file == "/fake/file.conf"
     parser = parse_cmd_args(["--conf=/fake/file.conf"])
     assert parser.config_file == "/fake/file.conf"
Beispiel #8
0
 def test_background(self):
     parser = parse_cmd_args(["-b"])
     assert parser.background is True
     parser = parse_cmd_args(["--background"])
     assert parser.background is True
Beispiel #9
0
 def test_debug(self):
     parser = parse_cmd_args(["-d"])
     assert parser.debug is True
     parser = parse_cmd_args(["--debug"])
     assert parser.debug is True
Beispiel #10
0
 def test_background(self):
     parser = parse_cmd_args(['-b'])
     assert parser.background is True
     parser = parse_cmd_args(['--background'])
     assert parser.background is True
Beispiel #11
0
 def test_default_conf(self):
     parser = parse_cmd_args(["-c/fake/file.conf"])
     assert parser.config_file == "/fake/file.conf"
     parser = parse_cmd_args(["--conf=/fake/file.conf"])
     assert parser.config_file == "/fake/file.conf"
Beispiel #12
0
 def test_debug(self):
     parser = parse_cmd_args(['-d'])
     assert parser.debug is True
     parser = parse_cmd_args(['--debug'])
     assert parser.debug is True
Beispiel #13
0
 def test_test(self):
     parser = parse_cmd_args(['-t'])
     assert parser.test is True
     parser = parse_cmd_args(['--test'])
     assert parser.test is True
Beispiel #14
0
 def test_default_conf(self):
     parser = parse_cmd_args(['-c/fake/file.conf'])
     assert parser.config_file == '/fake/file.conf'
     parser = parse_cmd_args(['--conf=/fake/file.conf'])
     assert parser.config_file == '/fake/file.conf'
Beispiel #15
0
 def test_debug(self):
     parser = parse_cmd_args(["-d"])
     assert parser.debug is True
     parser = parse_cmd_args(["--debug"])
     assert parser.debug is True
Beispiel #16
0
 def test_background(self):
     parser = parse_cmd_args(["-b"])
     assert parser.background is True
     parser = parse_cmd_args(["--background"])
     assert parser.background is True
Beispiel #17
0
 def test_test(self):
     parser = parse_cmd_args(["-t"])
     assert parser.test is True
     parser = parse_cmd_args(["--test"])
     assert parser.test is True