コード例 #1
0
def start_workers():

    # Launch worker threads to operate on queue
    logger.info('Starting %s worker threads' % cf.num_workers)
    for i in range(cf.num_workers):
        t = threading.Thread(target=processor, kwargs={'worker_id': i})
        t.daemon = True
        t.start()

    # If the config file has a [cron] section, the key names therein are
    # functions from 'myfuncs.py' which should be invoked periodically.
    # The key's value (must be numeric!) is the period in seconds.

    if cf.has_section('cron'):
        for name, val in cf.items('cron'):
            try:
                func = load_function(name=name, py_mod=cf.functions)
                cron_options = parse_cron_options(val)
                interval = cron_options['interval']
                logger.debug('Scheduling function "{name}" as periodic task ' \
                              'to run each {interval} seconds via [cron] section'.format(name=name, interval=interval))
                service = make_service(mqttc=mqttc, name='mqttwarn.cron')
                ptlist[name] = PeriodicThread(callback=func,
                                              period=interval,
                                              name=name,
                                              srv=service,
                                              now=asbool(
                                                  cron_options.get('now')))
                ptlist[name].start()
            except AttributeError:
                logger.error(
                    "[cron] section has function [%s] specified, but that's not defined"
                    % name)
                continue
コード例 #2
0
ファイル: test_util.py プロジェクト: dlangille/mqttwarn
def test_asbool():
    assert asbool(True) is True
    assert asbool(False) is False
    assert asbool(None) is False
    assert asbool('true') is True
    assert asbool('false') is False
    assert asbool('yes') is True
    assert asbool('no') is False
    assert asbool('on') is True
    assert asbool('off') is False

    with pytest.raises(ValueError) as excinfo:
        asbool('Hotzenplotz')
    assert str(excinfo.value) == "String is not true/false: 'hotzenplotz'"
コード例 #3
0
def test_asbool():
    assert asbool(True) is True
    assert asbool(False) is False
    assert asbool(None) is False
    assert asbool("true") is True
    assert asbool("false") is False
    assert asbool("yes") is True
    assert asbool("no") is False
    assert asbool("on") is True
    assert asbool("off") is False

    with pytest.raises(ValueError) as excinfo:
        asbool("Hotzenplotz")
    assert str(excinfo.value) == "String is not true/false: 'hotzenplotz'"