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:
4
tests/fixtures/customer_fixtures.py
vendored
4
tests/fixtures/customer_fixtures.py
vendored
@@ -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,
|
||||
|
||||
2
tests/fixtures/message_fixtures.py
vendored
2
tests/fixtures/message_fixtures.py
vendored
@@ -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,
|
||||
|
||||
2
tests/fixtures/vendor_fixtures.py
vendored
2
tests/fixtures/vendor_fixtures.py
vendored
@@ -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
|
||||
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
import pytest
|
||||
from pydantic import ValidationError
|
||||
|
||||
from models.schema.customer import (
|
||||
from app.modules.customers.schemas import (
|
||||
CustomerAddressCreate,
|
||||
CustomerAddressResponse,
|
||||
CustomerAddressUpdate,
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
import pytest
|
||||
from pydantic import ValidationError
|
||||
|
||||
from models.schema.inventory import (
|
||||
from app.modules.inventory.schemas import (
|
||||
InventoryAdjust,
|
||||
InventoryCreate,
|
||||
InventoryLocationResponse,
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
)
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user