コード例 #1
0
def test_odst2():
    """
    test na tridu Odst2 a jeji metody
    """
    odst1 = Odst1(datum='1.4.2020')
    odst1.konec_lhuty()
    odst1.maximalni_delka()

    odst2 = Odst2(datum='3.4.2022')
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2._vrat_konec(datum=odst2.konec) == '03.04.2024'

    odst2 = Odst2(datum='2.4.2022')
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2._vrat_konec(datum=odst2.konec) == '03.04.2023'

    with pytest.raises(Exception,
                       match='Ukon ze dne 31.03.2020 nemuze nastat pred '
                       'zapocetim behu lhuty dne 01.04.2020.'):
        odst2 = Odst2(datum='31.3.2020')
        odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)

    with pytest.raises(Exception,
                       match='Ukon ze dne 04.04.2023 nemuze nastat po '
                       'konci behu lhuty dne 03.04.2023.'):
        odst2 = Odst2(datum='4.4.2023')
        odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)
コード例 #2
0
def test14():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon3 = Odst3(datum='9.8.2020')
    ukon4 = Odst4(datum='1.9.2020')
    ukon4.zadej_konec_staveni(konec_staveni='1.12.2020')
    ukon4a = Odst4(datum='1.2.2021')
    ukon4a.zadej_konec_staveni(konec_staveni='1.4.2021')
    ukon4b = Odst4(datum='8.3.2021')
    ukon4b.zadej_konec_staveni(konec_staveni='6.5.2021')
    ukon4c = Odst4(datum='1.7.2021')
    ukon4c.zadej_konec_staveni(konec_staveni='1.9.2021')
    ukon3a = Odst3(datum='21.7.2021')
    ukon4d = Odst4(datum='1.1.2022')
    ukon4d.zadej_konec_staveni(konec_staveni='1.5.2022')
    ukon4e = Odst4(datum='1.4.2022')
    ukon4e.zadej_konec_staveni(konec_staveni='19.8.2022')
    ukon4f = Odst4(datum='21.5.2022')
    ukon4f.zadej_konec_staveni(konec_staveni='11.9.2022')
    odst4z = Odst4(datum='3.9.2020')
    odst4z.zadej_konec_staveni(konec_staveni='1.11.2020')
    ukony.extend([
        ukon1, ukon3, ukon4, ukon4a, ukon4b, ukon4c, ukon3a, ukon4d, ukon4e,
        ukon4f, odst4z
    ])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2025, 5, 14)
コード例 #3
0
def test1():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon2 = Odst2(datum='14.8.2021')
    ukony.extend([ukon1, ukon2])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2023, 4, 3)
コード例 #4
0
def test_odst1():
    """
    test na tridu Odst1 a jeji metody
    """
    odst1 = Odst1(datum='1.4.2019')
    odst1.konec_lhuty()
    odst1.maximalni_delka()
    assert odst1._vrat_konec(datum=odst1.konec) == '01.04.2022'
    assert odst1.maximalni == datetime.date(2029, 4, 2)
    assert odst1._vrat_konec(datum=odst1.maximalni) == '02.04.2029'

    odst1 = Odst1(datum='1.4.2020')
    odst1.konec_lhuty()
    odst1.maximalni_delka()
    assert odst1._vrat_konec(datum=odst1.konec) == '03.04.2023'
    assert odst1.maximalni == datetime.date(2030, 4, 1)
    assert odst1._vrat_konec(datum=odst1.maximalni) == '01.04.2030'
コード例 #5
0
def test_kompletni1():
    """
    test na kompletni vypocet realneho pripadu a jednotlivych mezivypoctu
    """
    odst1 = Odst1(datum='1.4.2020')  # podano DAP
    odst1.konec_lhuty()
    odst1.maximalni_delka()
    assert odst1.konec == datetime.date(2023, 4, 3)
    assert odst1.maximalni == datetime.date(2030, 4, 1)

    odst2 = Odst2(datum='1.7.2020')  # podano DODAP
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2023, 4, 3)

    odst2 = Odst2(datum='1.9.2020')  # DOPLVY
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2023, 4, 3)

    odst2 = Odst2(datum='13.12.2020')  # rozhodnuti o odvolani
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2023, 4, 3)

    odst2 = Odst2(datum='1.8.2022')  # DODAP
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2024, 4, 3)

    odst3 = Odst3(datum='5.9.2022')  # DK
    odst3.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst3.konec == datetime.date(2025, 9, 8)

    odst2 = Odst2(datum='17.2.2023')  # DOPLVY
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst3.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2025, 9, 8)

    odst2 = Odst2(datum='10.10.2023')  # rozhodnuti o odvolani
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst3.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2025, 9, 8)  # 8.9.2025

    odst4 = Odst4(datum='10.11.2023')  # soud
    odst4.zadej_konec_staveni(konec_staveni='19.11.2024')
    odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst2.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst4.konec == datetime.date(2026, 9, 21)
コード例 #6
0
def test3():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon2 = Odst2(datum='14.8.2021')
    ukon2a = Odst2(datum='14.12.2022')
    ukon3 = Odst3(datum='1.2.2024')
    ukony.extend([ukon1, ukon2, ukon2a, ukon3])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2027, 2, 2)
コード例 #7
0
def test10():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon3 = Odst3(datum='1.2.2023')
    ukon4 = Odst4(datum='1.2.2023')
    ukon4.zadej_konec_staveni(konec_staveni='4.8.2024')
    ukony.extend([ukon1, ukon3, ukon4])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2027, 8, 5)
コード例 #8
0
def test8():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon4 = Odst4(datum='15.3.2022')
    ukon2 = Odst2(datum='12.1.2023')
    ukon4.zadej_konec_staveni(konec_staveni='4.8.2023')
    ukony.extend([ukon1, ukon2, ukon4])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2024, 8, 23)
コード例 #9
0
def test5():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon3 = Odst3(datum='1.3.2023')
    ukon3a = Odst3(datum='1.2.2026')
    ukon3b = Odst3(datum='3.1.2029')
    ukony.extend([ukon1, ukon3, ukon3a, ukon3b])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2030, 4, 1)
コード例 #10
0
def test13():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon4 = Odst4(datum='1.2.2023')
    ukon4.zadej_konec_staveni(konec_staveni='4.8.2024')
    ukon4a = Odst4(datum='12.10.2023')
    ukon4a.zadej_konec_staveni(konec_staveni='30.8.2024')
    odst3 = Odst3(datum='15.8.2024')
    ukony.extend([ukon1, ukon4, ukon4a, odst3])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2027, 8, 31)
コード例 #11
0
def test4():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon2 = Odst2(datum='14.8.2021')
    ukon2a = Odst2(datum='14.12.2022')
    ukon3 = Odst3(datum='1.2.2024')
    ukon4 = Odst4(datum='15.9.2026')
    ukon4.zadej_konec_staveni(konec_staveni='4.8.2027')
    ukony.extend([ukon1, ukon2, ukon2a, ukon3, ukon4])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2027, 12, 23)
コード例 #12
0
def test12():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon4 = Odst4(datum='1.2.2023')
    ukon4.zadej_konec_staveni(konec_staveni='4.8.2024')
    ukon4a = Odst4(datum='12.10.2023')
    ukon4a.zadej_konec_staveni(konec_staveni='30.8.2024')
    ukon4b = Odst4(datum='11.9.2024')
    ukon4b.zadej_konec_staveni(konec_staveni='1.5.2025')
    ukony.extend([ukon1, ukon4, ukon4a, ukon4b])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2025, 6, 23)
コード例 #13
0
def test7():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon2 = Odst2(datum='14.8.2021')
    ukon2a = Odst2(datum='14.12.2022')
    ukon3 = Odst3(datum='4.4.2024')
    ukony.extend([ukon1, ukon2, ukon2a, ukon3])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    with pytest.raises(Exception) as error:
        spocitej_lhutu(ukony_sorted)
    assert str(
        error.value
    ) == 'Ukon ze dne 04.04.2024 nemuze nastat po konci behu lhuty dne 03.04.2024.'
コード例 #14
0
def test6():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon3 = Odst3(datum='1.3.2023')
    ukon3a = Odst3(datum='1.2.2020')
    ukony.extend([ukon1, ukon3, ukon3a])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)

    with pytest.raises(Exception) as error:
        spocitej_lhutu(ukony_sorted)
    assert str(
        error.value
    ) == 'Prvnim ukonem musi byt zahajeni behu lhuty dle § 148 odst.1.'
コード例 #15
0
def test_odst4():
    """
    test na tridu Odst4 a jeji metody
    """
    odst1 = Odst1(datum='1.4.2020')
    odst1.konec_lhuty()
    odst1.maximalni_delka()

    odst4 = Odst4(datum='1.5.2021')
    odst4.zadej_konec_staveni(konec_staveni='25.3.2022')
    odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst4._vrat_konec(datum=odst4.konec) == '26.02.2024'

    extension = Odst4(datum='2.1.2024')
    extension.zadej_konec_staveni(konec_staveni='1.7.2024')
    extension.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst4.konec,
                          maximalni_delka=odst1.maximalni)
    assert extension._vrat_konec(datum=extension.konec) == '26.08.2024'

    with pytest.raises(Exception,
                       match='Ukon ze dne 31.03.2020 nemuze nastat pred '
                       'zapocetim behu lhuty dne 01.04.2020.'):
        odst4 = Odst4(datum='31.3.2020')
        odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)

    with pytest.raises(Exception,
                       match='Ukon ze dne 04.04.2023 nemuze nastat po '
                       'konci behu lhuty dne 03.04.2023.'):
        odst4 = Odst4(datum='4.4.2023')
        odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)

    with pytest.raises(Exception,
                       match='Ukon ze dne 31.03.2020 nemuze nastat pred '
                       'zapocetim behu lhuty dne 01.04.2020.'):
        odst4 = Odst4(datum='14.9.2022')
        odst4.zadej_konec_staveni(konec_staveni='31.3.2020')
        odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)
コード例 #16
0
def test_15():
    ukony = list()
    ukon1 = Odst1(datum='1.4.2020')
    ukon4a = Odst4(datum='1.7.2021')
    ukon4a.zadej_konec_staveni(konec_staveni='1.11.2021')
    ukon4b = Odst4(datum='1.8.2021')
    ukon4b.zadej_konec_staveni(konec_staveni='1.9.2021')
    ukon4c = Odst4(datum='1.10.2022')
    ukon4c.zadej_konec_staveni(konec_staveni='10.12.2022')
    ukon4d = Odst4(datum='10.10.2022')
    ukon4d.zadej_konec_staveni(konec_staveni='12.12.2022')
    ukon4e = Odst4(datum='12.12.2022')
    ukon4e.zadej_konec_staveni(konec_staveni='3.3.2023')
    ukon4f = Odst4(datum='8.9.2023')
    ukon4f.zadej_konec_staveni(konec_staveni='1.12.2023')
    ukon2 = Odst2(datum='17.11.2023')
    ukony.extend(
        [ukon1, ukon4a, ukon4b, ukon4c, ukon2, ukon4d, ukon4e, ukon4f])
    ukony_sorted = sorted(ukony, key=lambda i: i.ukon)
    assert spocitej_lhutu(ukony_sorted) == datetime.date(2025, 4, 2)
コード例 #17
0
def test_odst3():
    """
    test na tridu Odst3 a jeji metody
    """
    odst1 = Odst1(datum='1.4.2020')
    odst1.konec_lhuty()
    odst1.maximalni_delka()

    odst3 = Odst3(datum='19.9.2022')
    odst3.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst3._vrat_konec(datum=odst3.konec) == '22.09.2025'

    extension = Odst3(datum='11.3.2025')
    extension.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst3.konec,
                          maximalni_delka=odst1.maximalni)
    assert extension._vrat_konec(datum=extension.konec) == '13.03.2028'

    extension2 = Odst3(datum='13.03.2028')
    extension2.konec_lhuty(datum_zacatku=odst1.ukon,
                           datum_konce=extension.konec,
                           maximalni_delka=odst1.maximalni)
    assert extension2._vrat_konec(datum=extension2.konec) == '01.04.2030'

    with pytest.raises(Exception,
                       match='Ukon ze dne 31.03.2020 nemuze nastat pred '
                       'zapocetim behu lhuty dne 01.04.2020.'):
        odst3 = Odst3(datum='31.3.2020')
        odst3.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)

    with pytest.raises(Exception,
                       match='Ukon ze dne 04.04.2023 nemuze nastat po '
                       'konci behu lhuty dne 03.04.2023.'):
        odst3 = Odst3(datum='4.4.2023')
        odst3.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=odst1.konec,
                          maximalni_delka=odst1.maximalni)
コード例 #18
0
def test_kompetni2():
    """
    test na kompletni vypocet realneho pripadu a jednotlivych mezivypoctu
    """
    odst1 = Odst1(datum='1.4.2020')  # podano DAP
    odst1.konec_lhuty()
    odst1.maximalni_delka()
    assert odst1.konec == datetime.date(2023, 4, 3)
    assert odst1.maximalni == datetime.date(2030, 4, 1)

    odst3 = Odst3(datum='8.10.2022')  # DK
    odst3.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst1.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst3.konec == datetime.date(2025, 10, 9)

    odst2 = Odst2(datum='4.7.2023')  # DOPLVY
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst3.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2025, 10, 9)
    konec = odst2.konec

    odst2 = Odst2(datum='1.3.2024')  # R o odvolani
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2025, 10, 9)
    assert odst2.konec == konec

    odst4 = Odst4(datum='1.4.2024')  # soud
    odst4.zadej_konec_staveni(konec_staveni='19.1.2025')
    odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=konec,
                      maximalni_delka=odst1.maximalni)
    assert odst4.konec == datetime.date(2026, 7, 30)

    odst2 = Odst2(datum='22.5.2025')  # R o odvolani
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst4.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2026, 7, 30)
    konec = odst2.konec

    odst4 = Odst4(datum='3.6.2025')  # soud
    odst4.zadej_konec_staveni(konec_staveni='18.2.2027')
    odst4.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=konec,
                      maximalni_delka=odst1.maximalni)
    assert odst4.konec == datetime.date(2028, 4, 17)

    odst2 = Odst2(datum='17.4.2027')  # R o odvolani
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=odst4.konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2029, 4, 17)
    konec = odst2.konec

    with pytest.raises(Exception) as error:
        odst2 = Odst2(datum='18.5.2029')  # DODAP
        odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                          datum_konce=konec,
                          maximalni_delka=odst1.maximalni)
    assert str(error.value) == 'Ukon ze dne 18.05.2029 nemuze nastat po ' \
                               'konci behu lhuty dne 17.04.2029.'

    odst2 = Odst2(datum='10.6.2028')  # DODAP
    odst2.konec_lhuty(datum_zacatku=odst1.ukon,
                      datum_konce=konec,
                      maximalni_delka=odst1.maximalni)
    assert odst2.konec == datetime.date(2030, 4, 1)