refactor: update test imports to use module locations

Update all test files to import from canonical module locations:
- Integration tests: orders, inventory, messages, invoices
- Unit tests: services and models
- Fixtures: customer, vendor, message fixtures

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-30 09:02:50 +01:00
parent dad2ebc677
commit 4adc35a674
26 changed files with 40 additions and 40 deletions

View File

@@ -9,7 +9,7 @@ See tests/conftest.py for details on fixture best practices.
import pytest
from app.modules.customers.models.customer import Customer, CustomerAddress
from models.database.order import Order
from app.modules.orders.models import Order
@pytest.fixture
@@ -145,7 +145,7 @@ def test_order(db, test_vendor, test_customer, test_customer_address):
@pytest.fixture
def test_order_item(db, test_order, test_product):
"""Create a test order item."""
from models.database.order import OrderItem
from app.modules.orders.models import OrderItem
order_item = OrderItem(
order_id=test_order.id,

View File

@@ -8,7 +8,7 @@ See tests/conftest.py for details on fixture best practices.
import pytest
from models.database.message import (
from app.modules.messaging.models import (
Conversation,
ConversationParticipant,
ConversationType,

View File

@@ -11,7 +11,7 @@ import uuid
import pytest
from models.database.company import Company
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
from models.database.product import Product
from models.database.vendor import Vendor

View File

@@ -447,7 +447,7 @@ class TestAdminInventoryAPI:
):
"""Test admin deleting inventory entry."""
# Create a new inventory entry to delete
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
new_inventory = Inventory(
product_id=test_product.id,

View File

@@ -248,7 +248,7 @@ class TestAdminLetzshopOrdersAPI:
"""Test listing vendor orders with data."""
from datetime import datetime, timezone
from models.database.order import Order
from app.modules.orders.models import Order
# Create test order using unified Order model with all required fields
order = Order(

View File

@@ -7,7 +7,7 @@ Tests the /api/v1/admin/messages/* endpoints.
import pytest
from models.database.message import ConversationType, ParticipantType
from app.modules.messaging.models import ConversationType, ParticipantType
@pytest.mark.integration

View File

@@ -9,8 +9,8 @@ All endpoints require admin JWT authentication.
import pytest
from datetime import datetime, timezone
from models.database.order import OrderItem
from models.database.order_item_exception import OrderItemException
from app.modules.orders.models import OrderItem
from app.modules.orders.models import OrderItemException
@pytest.fixture

View File

@@ -13,8 +13,8 @@ import pytest
from jose import jwt
from app.modules.customers.models.customer import Customer
from models.database.invoice import Invoice, InvoiceStatus, VendorInvoiceSettings
from models.database.order import Order, OrderItem
from app.modules.orders.models import Invoice, InvoiceStatus, VendorInvoiceSettings
from app.modules.orders.models import Order, OrderItem
@pytest.fixture

View File

@@ -10,8 +10,8 @@ from decimal import Decimal
import pytest
from app.modules.customers.models.customer import Customer
from models.database.invoice import Invoice, InvoiceStatus, VendorInvoiceSettings
from models.database.order import Order
from app.modules.orders.models import Invoice, InvoiceStatus, VendorInvoiceSettings
from app.modules.orders.models import Order
@pytest.mark.integration

View File

@@ -240,7 +240,7 @@ class TestVendorLetzshopOrdersAPI:
"""Test listing orders with status filter."""
from datetime import datetime, timezone
from models.database.order import Order
from app.modules.orders.models import Order
# Create test orders using unified Order model with all required fields
order1 = Order(
@@ -315,7 +315,7 @@ class TestVendorLetzshopOrdersAPI:
"""Test getting order detail."""
from datetime import datetime, timezone
from models.database.order import Order
from app.modules.orders.models import Order
order = Order(
vendor_id=test_vendor_with_vendor_user.id,
@@ -457,7 +457,7 @@ class TestVendorLetzshopFulfillmentAPI:
"""Test confirming an order."""
from datetime import datetime, timezone
from models.database.order import Order, OrderItem
from app.modules.orders.models import Order, OrderItem
# Create test order using unified Order model with all required fields
order = Order(
@@ -546,7 +546,7 @@ class TestVendorLetzshopFulfillmentAPI:
"""Test setting tracking information."""
from datetime import datetime, timezone
from models.database.order import Order
from app.modules.orders.models import Order
order = Order(
vendor_id=test_vendor_with_vendor_user.id,

View File

@@ -7,7 +7,7 @@ Tests the /api/v1/vendor/messages/* endpoints.
import pytest
from models.database.message import ConversationType, ParticipantType
from app.modules.messaging.models import ConversationType, ParticipantType
@pytest.mark.integration

View File

@@ -5,7 +5,7 @@ from datetime import UTC, datetime
import pytest
from models.database.order import Order, OrderItem
from app.modules.orders.models import Order, OrderItem
@pytest.fixture

View File

@@ -4,7 +4,7 @@
import pytest
from sqlalchemy.exc import IntegrityError
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
@pytest.mark.unit

View File

@@ -6,7 +6,7 @@ from datetime import datetime, timezone
import pytest
from sqlalchemy.exc import IntegrityError
from models.database.order import Order, OrderItem
from app.modules.orders.models import Order, OrderItem
def create_order_with_snapshots(

View File

@@ -4,7 +4,7 @@
import pytest
from sqlalchemy.exc import IntegrityError
from models.database.order_item_exception import OrderItemException
from app.modules.orders.models import OrderItemException
@pytest.mark.unit
@@ -65,7 +65,7 @@ class TestOrderItemExceptionModel:
exception_types = ["product_not_found", "gtin_mismatch", "duplicate_gtin"]
# Create new order items for each test to avoid unique constraint
from models.database.order import OrderItem
from app.modules.orders.models import OrderItem
for i, exc_type in enumerate(exception_types):
order_item = OrderItem(

View File

@@ -306,7 +306,7 @@ class TestProductInventoryProperties:
def test_physical_product_with_inventory(self, db, test_vendor):
"""Test physical product calculates inventory from entries."""
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
product = Product(
vendor_id=test_vendor.id,
@@ -364,7 +364,7 @@ class TestProductInventoryProperties:
def test_digital_product_ignores_inventory_entries(self, db, test_vendor):
"""Test digital product returns unlimited even with inventory entries."""
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
product = Product(
vendor_id=test_vendor.id,

View File

@@ -4,7 +4,7 @@
import pytest
from pydantic import ValidationError
from models.schema.customer import (
from app.modules.customers.schemas import (
CustomerAddressCreate,
CustomerAddressResponse,
CustomerAddressUpdate,

View File

@@ -4,7 +4,7 @@
import pytest
from pydantic import ValidationError
from models.schema.inventory import (
from app.modules.inventory.schemas import (
InventoryAdjust,
InventoryCreate,
InventoryLocationResponse,

View File

@@ -6,7 +6,7 @@ from datetime import datetime, timezone
import pytest
from pydantic import ValidationError
from models.schema.order import (
from app.modules.orders.schemas import (
AddressSnapshot,
AddressSnapshotResponse,
CustomerSnapshot,
@@ -573,7 +573,7 @@ class TestOrderItemResponseSchema:
assert response.has_unresolved_exception is False
# Pending exception
from models.schema.order import OrderItemExceptionBrief
from app.modules.orders.schemas import OrderItemExceptionBrief
pending_exc = OrderItemExceptionBrief(
id=1, original_gtin="123", original_product_name="Test",
exception_type="product_not_found", status="pending",

View File

@@ -8,7 +8,7 @@ import pytest
from app.exceptions import AddressLimitExceededException, AddressNotFoundException
from app.services.customer_address_service import CustomerAddressService
from app.modules.customers.models.customer import CustomerAddress
from models.schema.customer import CustomerAddressCreate, CustomerAddressUpdate
from app.modules.customers.schemas import CustomerAddressCreate, CustomerAddressUpdate
@pytest.fixture

View File

@@ -13,8 +13,8 @@ from app.exceptions import (
ProductNotFoundException,
)
from app.services.inventory_service import InventoryService
from models.database.inventory import Inventory
from models.schema.inventory import (
from app.modules.inventory.models import Inventory
from app.modules.inventory.schemas import (
InventoryAdjust,
InventoryCreate,
InventoryReserve,

View File

@@ -16,13 +16,13 @@ from app.services.invoice_service import (
InvoiceService,
LU_VAT_RATES,
)
from models.database.invoice import (
from app.modules.orders.models import (
Invoice,
InvoiceStatus,
VATRegime,
VendorInvoiceSettings,
)
from models.schema.invoice import (
from app.modules.orders.schemas import (
VendorInvoiceSettingsCreate,
VendorInvoiceSettingsUpdate,
)

View File

@@ -4,7 +4,7 @@
import pytest
from app.services.messaging_service import MessagingService
from models.database.message import (
from app.modules.messaging.models import (
Conversation,
ConversationParticipant,
ConversationType,

View File

@@ -10,8 +10,8 @@ from app.exceptions import (
ProductNotFoundException,
)
from app.services.order_item_exception_service import OrderItemExceptionService
from models.database.order import OrderItem
from models.database.order_item_exception import OrderItemException
from app.modules.orders.models import OrderItem
from app.modules.orders.models import OrderItemException
@pytest.fixture

View File

@@ -28,7 +28,7 @@ from app.services.order_service import (
order_service,
)
from app.modules.customers.models.customer import Customer
from models.database.order import Order, OrderItem
from app.modules.orders.models import Order, OrderItem
# Default address fields required by Order model
@@ -328,7 +328,7 @@ class TestOrderServiceUpdates:
def test_update_order_status(self, db, test_vendor, test_customer):
"""Test update_order_status changes status"""
from models.schema.order import OrderUpdate
from app.modules.orders.schemas import OrderUpdate
order = Order(
vendor_id=test_vendor.id,

View File

@@ -9,7 +9,7 @@ from sqlalchemy.exc import SQLAlchemyError
from app.exceptions import AdminOperationException, VendorNotFoundException
from app.services.stats_service import StatsService
from models.database.inventory import Inventory
from app.modules.inventory.models import Inventory
from models.database.marketplace_product import MarketplaceProduct
from models.database.marketplace_product_translation import (
MarketplaceProductTranslation,