Example #1
0
def test_config_file_loaded():
    create_test_config({"log": {"mode": True}})
    try:
        run_app('exec echo alles gute')
        assert cfg.log_mode == LogMode.ENABLED
    finally:
        remove_test_config()
Example #2
0
def test_plugin_executed():
    create_test_config({"plugins": ["test_plugin"]
                        })  # Use testing plugin in package 'test_plugin'
    run_app('exec --id run_with_test_plugin echo')

    assert test_plugin.TestPlugin.instance_ref(
    ).job_instances[-1].job_id == 'run_with_test_plugin'
Example #3
0
def test_config_file_loaded():
    create_test_config({"log": {"enabled": True}})
    try:
        run_app('exec echo alles gute')
        assert cfg.log_enabled != cfg.DEF_LOG_ENABLED
    finally:
        remove_test_config()
Example #4
0
def test_invalid_plugin_ignored(observer: TestStateObserver):
    test_plugin.TestPlugin.error_on_new_job_instance = BaseException(
        'Must be captured')
    create_test_config({"plugins": ["test_plugin"]
                        })  # Use testing plugin in package 'test_plugin'
    run_app('exec --id run_with_failing_plugin echo')

    assert observer.exec_state(-1) == ExecutionState.COMPLETED
Example #5
0
def test_defaults():
    create_test_config(dict())
    cfgfile.load()
    assert not cfg.log_enabled
    assert cfg.log_stdout_level == 'off'
    assert cfg.log_file_level == 'off'
    assert cfg.log_file_path is None
    assert not cfg.persistence_enabled
    assert cfg.plugins == ()
Example #6
0
def test_logging_stdout_level_cli_override():
    create_test_config(
        {"log": {
            "enabled": True,
            "stdout": {
                "level": "error"
            }
        }})
    run_app('exec --set log_stdout_level=warn echo')
    assert logging.WARN == log.get_console_level()
Example #7
0
def test_logging_stdout_level_in_config():
    create_test_config(
        {"log": {
            "enabled": True,
            "stdout": {
                "level": "error"
            }
        }})
    run_app('exec echo')
    assert logging.ERROR == log.get_console_level()
Example #8
0
def test_disable_job(observer: TestStateObserver):
    create_test_config({
        "persistence": {
            "enabled": True,
            "type": "sqlite",
            "database": str(test_db_path())
        }
    })
    run_app('disable job_to_disable')
    run_app('exec --id job_to_disable echo')

    assert observer.last_job().job_id == 'job_to_disable'
    assert observer.exec_state(-1) == ExecutionState.DISABLED
Example #9
0
def test_disable_jobs_by_regex(observer: TestStateObserver):
    create_test_config({
        "persistence": {
            "enabled": True,
            "type": "sqlite",
            "database": str(test_db_path())
        }
    })
    run_app('disable -regex disabled.*')

    run_app('exec --id disable echo')
    run_app('exec --id disabled echo')
    run_app('exec --id disabled1 echo')

    assert observer.last_state('disable') == ExecutionState.COMPLETED
    assert observer.last_state('disabled') == ExecutionState.DISABLED
    assert observer.last_state('disabled1') == ExecutionState.DISABLED
Example #10
0
def test_logging_file_path_cli_override():
    create_test_config({
        "log": {
            "mode": True,
            "file": {
                "level": "error",
                "path": "to_liberation.log"
            }
        }
    })
    try:
        run_app('exec --set log_file_path=to_nowhere.log echo')
        assert log.get_file_path().endswith('to_nowhere.log')
    finally:
        log_file = Path('to_nowhere.log')
        if log_file.exists():
            log_file.unlink()
Example #11
0
def test_logging_file_path_in_config():
    create_test_config({
        "log": {
            "enabled": True,
            "file": {
                "level": "error",
                "path": "to_liberation.log"
            }
        }
    })
    try:
        run_app('exec echo')
        assert log.get_file_path().endswith('to_liberation.log')
    finally:
        log_file = Path('to_liberation.log')
        if log_file.exists():
            log_file.unlink()
Example #12
0
def test_disable_jobs(observer: TestStateObserver):
    create_test_config({
        "persistence": {
            "enabled": True,
            "type": "sqlite",
            "database": str(test_db_path())
        }
    })
    run_app('disable job1 job3 j.*'
            )  # 'j.*' not a regular expression here as -regex opt not used

    run_app('exec --id job1 echo')
    run_app('exec --id j2 echo')
    run_app('exec --id job3 echo')

    assert observer.last_state('job1') == ExecutionState.DISABLED
    assert observer.last_state('j2') == ExecutionState.COMPLETED
    assert observer.last_state('job3') == ExecutionState.DISABLED
Example #13
0
def test_config_file_empty():
    create_test_config(None)
    try:
        run_app('exec echo alles gute')
    finally:
        remove_test_config()
Example #14
0
def test_logging_file_level_cli_override():
    create_test_config({"log": {"mode": True, "file": {"level": "error"}}})
    run_app('exec --set log_file_level=warn echo')
    assert logging.WARN == log.get_file_level()
Example #15
0
def test_logging_file_level_in_config():
    create_test_config({"log": {"mode": True, "file": {"level": "error"}}})
    run_app('exec echo')
    assert logging.ERROR == log.get_file_level()
Example #16
0
def test_logging_enabled_cli_override():
    create_test_config({"log": {"mode": False}})
    run_app('exec --set log_mode=on echo')
    assert not log.is_disabled()
Example #17
0
def test_plugins_array():
    create_test_config({"plugins": ["p1", "p2"]})
    cfgfile.load()
    assert cfg.plugins == ("p1", "p2")
Example #18
0
def test_logging_enabled_in_config():
    create_test_config({"log": {"enabled": True}})
    run_app('exec echo')
    assert not log.is_disabled()
Example #19
0
def test_plugins_single_value():
    create_test_config({"plugins": "plugin"})
    cfgfile.load()
    assert cfg.plugins == ("plugin", )
Example #20
0
def test_logging_disabled_by_default():
    create_test_config(dict())
    run_app('exec echo')
    assert log.is_disabled()
Example #21
0
def test_not_str_type_raises_error():
    create_test_config({"log": {"stdout": {"level": 3}}})  # Non-str value
    with pytest.raises(TypeError):
        cfgfile.load()
Example #22
0
def test_logging_disabled_in_config():
    create_test_config({"log": {"mode": False}})
    run_app('exec echo')
    assert log.is_disabled()