30 lines
1.2 KiB
TypeScript
30 lines
1.2 KiB
TypeScript
import { describe, it, expect } from "vitest"
|
|
import { mergeShopifyProductDataAfterLoadStock } from "./applyLoadStockSupplierQuantity"
|
|
import { supplierQuantityFromSyncedProductData } from "./shopifyInventorySum"
|
|
|
|
describe("mergeShopifyProductDataAfterLoadStock", () => {
|
|
it("decrements explicit supplier_quantity", () => {
|
|
const merged = mergeShopifyProductDataAfterLoadStock({ supplier_quantity: 10, title: "T" }, 3)
|
|
expect(supplierQuantityFromSyncedProductData(merged)).toBe(7)
|
|
})
|
|
|
|
it("uses variant sum when supplier_quantity absent", () => {
|
|
const merged = mergeShopifyProductDataAfterLoadStock(
|
|
{
|
|
variants: [{ inventory_quantity: 4 }, { inventory_quantity: 2 }],
|
|
},
|
|
3
|
|
)
|
|
expect(supplierQuantityFromSyncedProductData(merged)).toBe(3)
|
|
})
|
|
|
|
it("does not go below zero", () => {
|
|
const merged = mergeShopifyProductDataAfterLoadStock({ supplier_quantity: 2 }, 5)
|
|
expect(supplierQuantityFromSyncedProductData(merged)).toBe(0)
|
|
})
|
|
|
|
it("throws when supplier quantity unknown", () => {
|
|
expect(() => mergeShopifyProductDataAfterLoadStock({}, 1)).toThrow("supplier quantity unknown")
|
|
})
|
|
})
|