feat: reconcile application vertical slices

Backfill the completed acquisitions, sales, dashboard, pricing, search, public detail, worker, migration, contracts, validation, tests, and implementation-status changes into one verified application slice.
This commit is contained in:
2026-09-09 22:12:53 -04:00
parent b9ff7445a6
commit b8f089a5d9
78 changed files with 4561 additions and 2057 deletions
+49 -42
View File
@@ -1,76 +1,83 @@
import assert from 'node:assert/strict';
import test from 'node:test';
import assert from "node:assert/strict";
import test from "node:test";
import {
calculateNetSaleProceeds,
createSale,
createSaleItem,
} from '../../src/modules/sales/domain/sale.js';
} from "../../src/modules/sales/domain/sale.js";
test('creates a valid sale record and calculates net proceeds after fees', () => {
test("creates a valid sale record and calculates net proceeds after fees", () => {
const sale = createSale({
sellerId: 'seller-id',
saleDate: '2026-09-08',
saleLocation: 'eBay',
sellerId: "seller-id",
saleDate: "2026-09-08",
saleLocation: "eBay",
soldPriceMinor: 4999,
currency: 'USD',
currency: "USD",
platformFeesMinor: 300,
paymentProcessingFeesMinor: 120,
shippingCostMinor: 50,
taxesMinor: 90,
otherFeesMinor: 40,
buyerName: 'Alex',
buyerContact: 'alex@example.com',
buyerName: "Alex",
buyerContact: "alex@example.com",
});
assert.equal(sale.soldPriceMinor, 4999);
assert.equal(sale.currency, 'USD');
assert.equal(calculateNetSaleProceeds({
soldPriceMinor: 4999,
platformFeesMinor: 300,
paymentProcessingFeesMinor: 120,
shippingCostMinor: 50,
taxesMinor: 90,
otherFeesMinor: 40,
}), 4399);
assert.equal(sale.currency, "USD");
assert.equal(
calculateNetSaleProceeds({
soldPriceMinor: 4999,
platformFeesMinor: 300,
paymentProcessingFeesMinor: 120,
shippingCostMinor: 50,
taxesMinor: 90,
otherFeesMinor: 40,
}),
4399,
);
});
test('rejects invalid sales and negative fee values', () => {
test("rejects invalid sales and negative fee values", () => {
assert.throws(
() => createSale({
sellerId: 'seller-id',
saleDate: '2026-09-08',
soldPriceMinor: 0,
}),
() =>
createSale({
sellerId: "seller-id",
saleDate: "2026-09-08",
soldPriceMinor: 0,
}),
/must be a positive integer minor unit/,
);
assert.throws(
() => createSaleItem({
saleId: 'sale-id',
inventoryItemId: 'inventory-item-id',
soldPriceMinor: 2000,
costBasisMinor: -1,
}),
() =>
createSaleItem({
saleId: "sale-id",
inventoryItemId: "inventory-item-id",
soldPriceMinor: 2000,
costBasisMinor: -1,
}),
/must be a non-negative integer minor unit/,
);
assert.throws(
() => createSale({
sellerId: 'seller-id',
saleDate: '2026-02-30',
soldPriceMinor: 2000,
}),
() =>
createSale({
sellerId: "seller-id",
saleDate: "2026-02-30",
soldPriceMinor: 2000,
}),
/must be a valid ISO date/,
);
assert.throws(
() => createSale({
sellerId: 'seller-id',
saleDate: '2026-09-08',
soldPriceMinor: 2000,
currency: 'US dollars',
}),
() =>
createSale({
sellerId: "seller-id",
saleDate: "2026-09-08",
soldPriceMinor: 2000,
currency: "US dollars",
}),
/must be a three-letter ISO currency code/,
);
});