Test TestPayment
¶
Test jednostkowy dla klasy Payment
, sprawdzający poprawność tworzenia płatności oraz działania jej metod.
Zakres testów obejmuje:
- tworzenie płatności z różnymi metodami (karta/gotówka),
- walidację poprawności danych wejściowych (rezerwacja, metoda płatności),
- potwierdzanie płatności i aktualizację jej statusu,
- obsługę ponownego potwierdzania tej samej płatności,
- metody informacyjne: is_paid()
, get_summary()
, __str__()
i __repr__()
,
- obsługę różnych kwot wynikających z rezerwacji (liczba nocy × cena pokoju).
Testy wykonują również weryfikację typu danych oraz wartości zwracanych przez metody klasy.
Dokumentacja techniczna¶
Bases: TestCase
Test dla klasy Payment - weryfikuje poprawność tworzenia płatności oraz działania metod klasy.
setUp()
¶
Przygotowanie danych testowych - utworzenie gościa, pokoju i rezerwacji.
Source code in tests/unit/test_payment.py
test_confirm_payment()
¶
Test działania metody confirm_payment - czy oznacza płatność jako zapłaconą.
Source code in tests/unit/test_payment.py
test_confirm_payment_twice()
¶
Weryfikacja czy program zwróci błąd ValueError przy próbie ponownego potwierdzenia płatności.
Source code in tests/unit/test_payment.py
test_create_payment_card()
¶
Test poprawności utworzenia płatności kartą.
Source code in tests/unit/test_payment.py
test_create_payment_cash()
¶
Test poprawności utworzenia płatności gotówką.
Source code in tests/unit/test_payment.py
test_different_reservation_amounts()
¶
Test czy payment poprawnie pobiera kwotę z różnych rezerwacji.
Source code in tests/unit/test_payment.py
test_get_summary()
¶
Test działania metody get_summary - czy zwraca poprawne podsumowanie płatności.
Source code in tests/unit/test_payment.py
test_invalid_payment_method()
¶
Weryfikacja czy program zwróci błąd ValueError, gdy metoda płatności nie jest 'karta' lub 'gotówka'.
Source code in tests/unit/test_payment.py
test_invalid_reservation()
¶
Weryfikacja czy program zwróci błąd TypeError, gdy rezerwacja nie jest obiektem klasy Reservation.
test_is_paid()
¶
Test działania metody is_paid - czy poprawnie zwraca status płatności.
Source code in tests/unit/test_payment.py
test_repr()
¶
Weryfikacja czy techniczny opis obiektu zawiera pożądane informacje o płatności.
Source code in tests/unit/test_payment.py
test_str_representation()
¶
Weryfikacja czy po wyświetleniu płatności widać jej status.