Add category-list factory and seed categories in B4W smoke test
This commit is contained in:
@@ -3,6 +3,7 @@ from datetime import date
|
||||
import pytest
|
||||
|
||||
from src.models.category import Category, CategoryBudget
|
||||
from tests.factories import CategoryFactory
|
||||
|
||||
|
||||
class TestCategoryComputedFields:
|
||||
@@ -75,7 +76,7 @@ class TestCategoryBudgetValidation:
|
||||
|
||||
def test_valid_budget_no_dates(self):
|
||||
"""Budget with None dates is valid."""
|
||||
cat = Category.from_str("test")
|
||||
cat = CategoryFactory.build()
|
||||
budget = CategoryBudget(
|
||||
category=cat,
|
||||
amount_eur=100.00,
|
||||
@@ -86,7 +87,7 @@ class TestCategoryBudgetValidation:
|
||||
def test_valid_budget_with_dates(self):
|
||||
"""Budget with valid date range is accepted."""
|
||||
|
||||
cat = Category.from_str("test")
|
||||
cat = CategoryFactory.build()
|
||||
budget = CategoryBudget(
|
||||
category=cat,
|
||||
amount_eur=100.00,
|
||||
@@ -99,7 +100,7 @@ class TestCategoryBudgetValidation:
|
||||
def test_invalid_date_range_raises(self):
|
||||
"""Budget with valid_from > valid_to raises ValueError."""
|
||||
|
||||
cat = Category.from_str("test")
|
||||
cat = CategoryFactory.build()
|
||||
|
||||
with pytest.raises(ValueError) as exc_info:
|
||||
CategoryBudget(
|
||||
@@ -116,7 +117,7 @@ class TestCategoryBudgetValidation:
|
||||
def test_valid_budget_exact_boundary(self):
|
||||
"""Budget with exact same from and to is valid (single day)."""
|
||||
|
||||
cat = Category.from_str("test")
|
||||
cat = CategoryFactory.build()
|
||||
budget = CategoryBudget(
|
||||
category=cat,
|
||||
amount_eur=100.00,
|
||||
@@ -129,7 +130,7 @@ class TestCategoryBudgetValidation:
|
||||
def test_validation_preserves_original_values(self):
|
||||
"""Validation doesn't change the model's original values."""
|
||||
|
||||
cat = Category.from_str("test")
|
||||
cat = CategoryFactory.build()
|
||||
budget = CategoryBudget(
|
||||
category=cat,
|
||||
amount_eur=150.75,
|
||||
|
||||
Reference in New Issue
Block a user