Пример #1
0
def test_run_validations_success(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [Validation("success")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 1
    assert publishers[0].failures == 0
Пример #2
0
def test_run_validations_failure(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [construct_failing_validation("failed")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 0
    assert publishers[0].failures == 1
Пример #3
0
def test_run_validations_sets_time_on_failure(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = Validation("success")
    validation.perform = slow_fail
    run._run_validations([validation], reporter, processes)
    assert abs(reporter._reports[0].time - 2) <= 0.2
Пример #4
0
def test_run_validations_sets_time_with_function_if_available(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = Validation("success")
    validation.get_elapsed_time = return_5
    run._run_validations([validation], reporter, processes)
    assert reporter._reports[0].time == 5
Пример #5
0
def test_run_validations_failure(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [construct_failing_validation("failed")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 0
    assert publishers[0].failures == 1
Пример #6
0
def test_run_validations_sets_time_with_function_if_available(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = Validation("success")
    validation.get_elapsed_time = return_5
    run._run_validations([validation], reporter, processes)
    assert reporter._reports[0].time == 5
Пример #7
0
def test_run_validations_success(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [Validation("success")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 1
    assert publishers[0].failures == 0
Пример #8
0
def test_run_validations_sets_time_on_failure(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = Validation("success")
    validation.perform = slow_fail
    run._run_validations([validation], reporter, processes)
    assert abs(reporter._reports[0].time - 2) <= 0.2
Пример #9
0
def test_run_validations_without_timeout_hangs(env, processes):
    #this test just verifies NeverFail behaves as we expect
    timeout = 60
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = NeverFinish("shouldn't finish but will")
    run._run_validations([validation], reporter, processes, timeout)
    assert not reporter._reports[0].is_failure()
Пример #10
0
def test_run_validations_enforces_global_timeout(env, processes):
    timeout = 5
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = NeverFinish("never finishes")
    run._run_validations([validation], reporter, processes, timeout)
    assert reporter._reports[0].is_failure()
    assert reporter._reports[0].time == timeout
Пример #11
0
def test_run_validations_fails_on_slow_success(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = Validation("success")
    validation.perform = slow_success
    validation.timeout = 1
    run._run_validations([validation], reporter, processes)
    assert reporter._reports[0].is_failure()
Пример #12
0
def test_run_validations_without_timeout_hangs(env, processes):
    #this test just verifies NeverFail behaves as we expect
    timeout = 60
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = NeverFinish("shouldn't finish but will")
    run._run_validations([validation], reporter, processes, timeout)
    assert not reporter._reports[0].is_failure()
Пример #13
0
def test_run_validations_enforces_global_timeout(env, processes):
    timeout = 5
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validation = NeverFinish("never finishes")
    run._run_validations([validation], reporter, processes, timeout)
    assert reporter._reports[0].is_failure()
    assert reporter._reports[0].time == timeout
Пример #14
0
def test_run_validations_group_success(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [Validation("success", group="a"),
                   GroupValidation("group a", "a", low_threshold=2),
                   Validation("success", group="a"),
                   construct_failing_validation("failed", group="a")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 3
    assert publishers[0].failures == 1
Пример #15
0
def test_run_validations_group_success(env, processes):
    reporter = env["reporter"]
    publishers = [MockPublisher()]
    reporter.publishers = publishers
    validations = [Validation("success", group="a"),
                   GroupValidation("group a", "a", low_threshold=2),
                   Validation("success", group="a"),
                   construct_failing_validation("failed", group="a")]
    run._run_validations(validations, reporter, processes)
    assert publishers[0].successes == 3
    assert publishers[0].failures == 1