debt_optimizer.core.validation module

Validation utilities for financial data and inputs.

exception debt_optimizer.core.validation.ValidationError[source]

Bases: ValueError

Custom exception for validation errors.

debt_optimizer.core.validation.validate_debt_data(debt_data)[source]

Validate debt data - can handle both dictionaries and lists of Debt objects.

Parameters:

debt_data – Dictionary containing debt information or list of Debt objects

Return type:

List[str]

Returns:

List of validation error messages (empty if valid)

debt_optimizer.core.validation.validate_income_data(income_data)[source]

Validate income data - can handle both dictionaries and lists of Income objects.

Parameters:

income_data – Dictionary containing income information or list of Income objects

Return type:

List[str]

Returns:

List of validation error messages (empty if valid)

debt_optimizer.core.validation.validate_expense_data(expense_data)[source]

Validate expense data - can handle both dictionaries and lists of RecurringExpense objects. # noqa: E501

Parameters:

expense_data – Dictionary containing expense information or list of RecurringExpense objects # noqa: E501

Return type:

List[str]

Returns:

List of validation error messages (empty if valid)

debt_optimizer.core.validation.validate_financial_scenario(debts, income_sources, recurring_expenses, settings)[source]

Validate a complete financial scenario for logical consistency.

Parameters:
Return type:

Tuple[bool, List[str]]

Returns:

Tuple of (is_valid, error_messages)

debt_optimizer.core.validation.validate_optimization_goal(goal)[source]

Validate optimization goal string.

Parameters:

goal (str) – Goal string to validate

Return type:

bool

Returns:

True if valid, False otherwise