major refactoring adding vendor and customer features

This commit is contained in:
2025-10-11 09:09:25 +02:00
parent f569995883
commit dd16198276
126 changed files with 15109 additions and 3747 deletions

View File

@@ -28,13 +28,13 @@ class TestMarketplaceService:
def test_validate_vendor_access_success(self, db, test_vendor, test_user):
"""Test successful vendor access validation"""
# Set the vendor owner to the test user
test_vendor.owner_id = test_user.id
test_vendor.owner_user_id = test_user.id
db.commit()
result = self.service.validate_vendor_access(db, test_vendor.vendor_code, test_user)
assert result.vendor_code == test_vendor.vendor_code
assert result.owner_id == test_user.id
assert result.owner_user_id == test_user.id
def test_validate_vendor_access_admin_can_access_any_vendor(
self, db, test_vendor, test_admin
@@ -59,7 +59,7 @@ class TestMarketplaceService:
):
"""Test vendor access validation when user doesn't own the vendor """
# Set the vendor owner to a different user
test_vendor.owner_id = other_user.id
test_vendor.owner_user_id = other_user.id
db.commit()
with pytest.raises(UnauthorizedVendorAccessException) as exc_info:
@@ -73,7 +73,7 @@ class TestMarketplaceService:
def test_create_import_job_success(self, db, test_vendor, test_user):
"""Test successful creation of import job"""
# Set the vendor owner to the test user
test_vendor.owner_id = test_user.id
test_vendor.owner_user_id = test_user.id
db.commit()
request = MarketplaceImportJobRequest(
@@ -90,7 +90,7 @@ class TestMarketplaceService:
assert result.user_id == test_user.id
assert result.status == "pending"
assert result.source_url == "https://example.com/products.csv"
assert result.vendor_name == test_vendor.vendor_name
assert result.vendor_name == test_vendor.name
def test_create_import_job_invalid_vendor(self, db, test_user):
"""Test import job creation with invalid vendor """
@@ -111,7 +111,7 @@ class TestMarketplaceService:
def test_create_import_job_unauthorized_access(self, db, test_vendor, test_user, other_user):
"""Test import job creation with unauthorized vendor access"""
# Set the vendor owner to a different user
test_vendor.owner_id = other_user.id
test_vendor.owner_user_id = other_user.id
db.commit()
request = MarketplaceImportJobRequest(
@@ -436,7 +436,7 @@ class TestMarketplaceService:
# Test edge cases and error scenarios
def test_validate_vendor_access_case_insensitive(self, db, test_vendor, test_user):
"""Test vendor access validation is case insensitive"""
test_vendor.owner_id = test_user.id
test_vendor.owner_user_id = test_user.id
db.commit()
# Test with lowercase vendor code