You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.4 KiB
52 lines
1.4 KiB
import { describe, expect, it } from "vitest";
|
|
import { resolveDoUploadTaskId } from "@/services/import/confirm-do-upload";
|
|
|
|
describe("resolveDoUploadTaskId", () => {
|
|
it("uses CC list hit for the same container no", () => {
|
|
const r = resolveDoUploadTaskId({
|
|
containerNo: "TRHU8524770",
|
|
listItems: [
|
|
{
|
|
F_ContainerNo: "TRHU8524770",
|
|
F_ContainerTaskId: "task-real",
|
|
},
|
|
],
|
|
});
|
|
expect(r).toEqual({ ok: true, taskId: "task-real" });
|
|
});
|
|
|
|
it("rejects empty list even if import id is mock-task", () => {
|
|
const r = resolveDoUploadTaskId({
|
|
containerNo: "TRHU8524770",
|
|
importExternalId: "mock-task-TRHU8524770",
|
|
listItems: [],
|
|
});
|
|
expect(r).toEqual({ ok: false });
|
|
});
|
|
|
|
it("does not attach DO to a different container in the list", () => {
|
|
const r = resolveDoUploadTaskId({
|
|
containerNo: "TRHU8524770",
|
|
listItems: [
|
|
{
|
|
F_ContainerNo: "WHSU8127240",
|
|
F_ContainerTaskId: "other-task",
|
|
},
|
|
],
|
|
});
|
|
expect(r).toEqual({ ok: false });
|
|
});
|
|
|
|
it("falls back to prior SaveContainer id when list is empty", () => {
|
|
const r = resolveDoUploadTaskId({
|
|
containerNo: "TRHU8524770",
|
|
importExternalId: "428aca68-9baa-491c-b1ed-e45a5440fb91",
|
|
listItems: [],
|
|
});
|
|
expect(r).toEqual({
|
|
ok: true,
|
|
taskId: "428aca68-9baa-491c-b1ed-e45a5440fb91",
|
|
});
|
|
});
|
|
});
|