TASK22224: harden createappealcompletemessage parity
This commit is contained in:
@@ -694,6 +694,98 @@ test("createappealcompletemessageproxy dependency failure returns CREATE_APPEAL_
|
||||
);
|
||||
});
|
||||
|
||||
test("createappealcompletemessage_api accepts encoded hash variant and returns success", async () => {
|
||||
const mod = loadModule(
|
||||
"pages/api/file/createappealcompletemessage_api.js",
|
||||
{
|
||||
nextConnect: createNextConnectMock(),
|
||||
middleware: () => {},
|
||||
respondError: respondErrorMock,
|
||||
respondSuccess: respondSuccessMock,
|
||||
hashAPIPath: (queryPath) =>
|
||||
queryPath.includes("tempcaseref=TMP%2F1")
|
||||
? "&hash=expected"
|
||||
: "&hash=other",
|
||||
getProgressBlobs: async () => ({ path: "TMP/1/progress.json" }),
|
||||
downloadProgressFile: async (_container, path) => {
|
||||
if (path.includes("_case.json")) {
|
||||
return {
|
||||
"customerid_contact@odata.bind":
|
||||
"/contacts(00000000-0000-0000-0000-000000000001)"
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
pinswg_siteaddressline1: "Line 1",
|
||||
pinswg_siteaddressline2: "",
|
||||
pinswg_siteaddresstown: "Town",
|
||||
pinswg_siteaddresscounty: "County",
|
||||
pinswg_siteaddresspostcode: "CF1 1AA",
|
||||
pinswg_lpaapplicationreference: "LPA-1",
|
||||
pinswg_developmentdescription: "Desc",
|
||||
pinswg_name: "tmp"
|
||||
};
|
||||
},
|
||||
createBlob: async () => ({}),
|
||||
getCaseBlob: async () => ({}),
|
||||
createCaseCompleteMessage: async () => ({}),
|
||||
updateAccount: async () => ({}),
|
||||
consoleLogger: () => {},
|
||||
_: { isEmpty: (v) => v === undefined || v === null || v === "" }
|
||||
}
|
||||
);
|
||||
|
||||
const req = {
|
||||
query: {
|
||||
container: "cont/1",
|
||||
tempcaseref: "TMP/1",
|
||||
inv: "846040001",
|
||||
hash: "expected"
|
||||
}
|
||||
};
|
||||
const res = createRes();
|
||||
await mod.default.handler(req, res);
|
||||
|
||||
assert.strictEqual(res.state.statusCode, 200);
|
||||
assert.deepStrictEqual(JSON.parse(JSON.stringify(res.state.jsonBody)), {
|
||||
status: "success"
|
||||
});
|
||||
});
|
||||
|
||||
test("createappealcompletemessage_api dependency failure returns CREATE_APPEAL_COMPLETE_MESSAGE_FAILED", async () => {
|
||||
const mod = loadModule(
|
||||
"pages/api/file/createappealcompletemessage_api.js",
|
||||
{
|
||||
nextConnect: createNextConnectMock(),
|
||||
middleware: () => {},
|
||||
respondError: respondErrorMock,
|
||||
respondSuccess: respondSuccessMock,
|
||||
hashAPIPath: () => "&hash=expected",
|
||||
getProgressBlobs: async () => {
|
||||
throw new Error("progress failed");
|
||||
},
|
||||
consoleLogger: () => {},
|
||||
_: { isEmpty: () => true }
|
||||
}
|
||||
);
|
||||
|
||||
const req = {
|
||||
query: {
|
||||
container: "c1",
|
||||
tempcaseref: "TMP1",
|
||||
hash: "expected"
|
||||
}
|
||||
};
|
||||
const res = createRes();
|
||||
await mod.default.handler(req, res);
|
||||
|
||||
assert.strictEqual(res.state.statusCode, 400);
|
||||
assert.strictEqual(
|
||||
res.state.jsonBody.error.code,
|
||||
"CREATE_APPEAL_COMPLETE_MESSAGE_FAILED"
|
||||
);
|
||||
});
|
||||
|
||||
test("createcaseinvolvement returns record exists on 412 conflict", async () => {
|
||||
const mod = loadModule("pages/api/file/createcaseinvolvement_api.js", {
|
||||
respondError: respondErrorMock,
|
||||
|
||||
Reference in New Issue
Block a user