예제 #1
0
def test_four_day_weekends_less_pto(capfd):
    four_day_weekends(start_month=10, paid_time_off=120)
    output = capfd.readouterr()[0].splitlines()
    assert len(output) == 16
    assert "11" in output[0]
    assert "120" in output[2]
    assert "-56" in output[3]
    assert "*" in output[8]
예제 #2
0
def test_four_day_weekends_default(capfd):
    four_day_weekends()
    output = capfd.readouterr()[0].splitlines()
    assert len(output) == 23
    assert "18 Four-Day Weekends" in output[0]
    assert "(25 days)" in output[2]
    assert "(11 days)" in output[3]
    assert "*" in output[10]
    assert output[-2] == "2020-12-11 - 2020-12-14"
예제 #3
0
def test_four_day_weekends_no_event_horizon(capfd):
    four_day_weekends(start_month=10, paid_time_off=284)
    output = capfd.readouterr()[0].splitlines()
    for line in output:
        assert "*" not in line
예제 #4
0
def test_four_day_weekends_october(capfd):
    four_day_weekends(start_month=10)
    output = capfd.readouterr()[0].splitlines()
    assert len(output) == 16
    assert "(3 days)" in output[3]
    assert output[10] == "2020-11-13 - 2020-11-16"
예제 #5
0
def test_four_day_weekends_october_work_days(capfd):
    four_day_weekends(start_month=10, show_workdays=True)
    output = capfd.readouterr()[0].splitlines()
    assert len(output) == 16
    assert "(15 days)" in output[0]
    assert output[3] == "2020-10-09"
예제 #6
0
def default_output(capfd):
    four_day_weekends()
    return capfd.readouterr()[0].splitlines()
예제 #7
0
def test_four_day_weekends_invalid_call_custom_error_message():
    new_msg = "You're calling it wrong dude!"
    pto.ERROR_MSG = new_msg
    with pytest.raises(ValueError) as e:
        four_day_weekends(True)
    assert str(e.value) == new_msg
예제 #8
0
def test_last_chance_with_bit_reduced_pto(capfd):
    four_day_weekends(paid_time_off=160)
    output = capfd.readouterr()[0].splitlines()
    assert "*" in output[13]
예제 #9
0
def test_four_day_weekends_workdays(capfd):
    four_day_weekends(show_workdays=True)
    output = capfd.readouterr()[0].splitlines()
    assert len(output) == 26
    assert "Remaining Work Days: 200 (25 days)" in output[0]
    assert output[-1] == "2020-12-31"
예제 #10
0
def reduced_pto_output(capfd):
    four_day_weekends(start_month=10, paid_time_off=120)
    return capfd.readouterr()[0].splitlines()
예제 #11
0
def test_last_chance_with_pto_over(capfd):
    four_day_weekends(start_month=10, paid_time_off=284)
    output = capfd.readouterr()[0].splitlines()
    for line in output:
        assert "*" not in line
예제 #12
0
def october_workdays_output(capfd):
    four_day_weekends(start_month=10, show_workdays=True)
    return capfd.readouterr()[0].splitlines()
예제 #13
0
def october_output(capfd):
    four_day_weekends(start_month=10)
    return capfd.readouterr()[0].splitlines()
예제 #14
0
def default_workdays_output(capfd):
    four_day_weekends(show_workdays=True)
    return capfd.readouterr()[0].splitlines()
예제 #15
0
def test_four_day_weekends_pto_160(capfd):
    four_day_weekends(paid_time_off=160)
    output = capfd.readouterr()[0].splitlines()
    assert "*" in output[13]
예제 #16
0
def test_four_day_weekends_invalid_call():
    with pytest.raises(ValueError) as e:
        four_day_weekends(True)
    assert str(e.value) == pto.ERROR_MSG
예제 #17
0
def test_four_day_weekends_pto_odd(capfd):
    four_day_weekends(start_month=11, paid_time_off=55)
    output = capfd.readouterr()[0].splitlines()
    assert "*" in output[7]
예제 #18
0
def test_last_chance_with_tiny_nonfullday_pto(capfd):
    four_day_weekends(start_month=11, paid_time_off=55)
    output = capfd.readouterr()[0].splitlines()
    assert "*" in output[7]