import assert from "node:assert/strict"; import test from "node:test"; import { createProviderMappingService } from "../../src/modules/pricing/services/provider-mapping-service.js"; test("creates and disables seller-owned provider mappings", async () => { const calls = []; const service = createProviderMappingService({ providerMappingRepository: { async createForSeller(input, sellerId) { calls.push(["create", input, sellerId]); return { status: "CREATED", mapping: { id: "mapping-1", ...input } }; }, async listForSeller() { return [{ id: "mapping-1", status: "ACTIVE" }]; }, async disableForSeller() { return { status: "DISABLED", mapping: { id: "mapping-1", status: "DISABLED" }, }; }, }, }); const created = await service.create({ sellerId: "seller-1", productId: "product-1", providerId: "fixture", mappingType: "PRODUCT", externalIdentifier: "ext-1", }); assert.equal(created.id, "mapping-1"); assert.equal(calls[0][2], "seller-1"); assert.equal( (await service.list({ sellerId: "seller-1", productId: "product-1" })) .length, 1, ); assert.equal( (await service.disable({ sellerId: "seller-1", id: "mapping-1" })).status, "DISABLED", ); });