Spaces:
Running
Running
| from src.entity.api.transaction_api import TransactionApi | |
| from datetime import datetime, timedelta | |
| def test_is_valid(transaction_api: TransactionApi): | |
| """ | |
| Test the is_valid method of the TransactionApi class | |
| Case: valid transaction_api object | |
| """ | |
| # Check if the transaction_api object is valid | |
| assert transaction_api.is_valid() is True | |
| def test_is_valid_negative_amount(transaction_api: TransactionApi): | |
| # Check if the transaction_api object is invalid with negative amount | |
| transaction_api.transaction_amount = -100.0 | |
| assert transaction_api.is_valid() is False | |
| def test_is_valid_future_timestamp(transaction_api: TransactionApi): | |
| # Check if the transaction_api object is invalid with future timestamp | |
| transaction_api.transaction_timestamp = 999999999999999 | |
| assert transaction_api.is_valid() is False | |
| def test_is_valid_future_dob(transaction_api: TransactionApi): | |
| # Check if the transaction_api object is invalid with too young date of birth | |
| nine_years_ago = datetime.now() - timedelta(days=365 * 9) # 9 years old customer | |
| transaction_api.customer_date_of_birth = nine_years_ago.strftime("%Y-%m-%d") | |
| assert transaction_api.is_valid() is False | |
| def test_is_valid_invalid_date_format(transaction_api: TransactionApi): | |
| # Check if the transaction_api object is invalid with invalid date of birth format | |
| transaction_api.customer_date_of_birth = "01-01-1980" | |
| assert transaction_api.is_valid() is False | |