import assert from 'node:assert/strict' import test from 'node:test' import { describeLoadDeliveryProductGap } from '../src/utils/pl-plan-stop-form' test('load and delivery product sets must name every product that exists on only one side', () => { const gap = describeLoadDeliveryProductGap( [ { productId: 'a', productName: 'A' }, { productId: 'd', productName: 'D' } ], [ { products: [{ productId: 'a', productName: 'A' }] }, { products: [ { productId: 'b', productName: 'B' }, { productId: 'c', productName: 'C' } ] } ] ) assert.equal( gap, '装货段有产品 D,送货段没有;送货段有产品 B、C,装货段没有。两边产品必须一致,不能保存' ) }) test('same product in different packages is one product', () => { assert.equal( describeLoadDeliveryProductGap( [ { productId: 'a', productName: '尿素', packageSpec: '桶' }, { productId: 'a', productName: '尿素', packageSpec: '散装' } ], [{ products: [{ productId: 'a', productName: '尿素', packageSpec: '袋' }] }] ), '' ) }) test('empty product lists match', () => { assert.equal(describeLoadDeliveryProductGap([], [{ products: [] }]), '') })