АРЧ АП11 - Архитектура после регресса: Архитектура: сделать confirmed payables и receivables snapshots business-first без нумерованного report framing
This commit is contained in:
@@ -509,10 +509,10 @@ describe("address compose stage utf8 headers", () => {
|
||||
);
|
||||
|
||||
expect(reply.responseType).toBe("FACTUAL_LIST");
|
||||
expect(reply.text).toContain("Итого по предварительному срезу открытых договоров");
|
||||
expect(reply.text).toContain("Блок 1. Статус результата");
|
||||
expect(reply.text).toContain("Результат: предварительный список договоров с возможными незакрытыми расчетами.");
|
||||
expect(reply.text).toContain("Блок 4. Основной список (коммерческие договоры)");
|
||||
expect(reply.text).toContain("Коротко: по предварительному срезу открытых договоров");
|
||||
expect(reply.text).toContain("Это shortlist на проверку");
|
||||
expect(reply.text).toContain("Основной список (коммерческие договоры)");
|
||||
expect(reply.text).not.toContain("Блок 1");
|
||||
expect(reply.semantics?.result_mode).toBe("heuristic_candidates");
|
||||
expect(reply.semantics?.balance_confirmed).toBe(false);
|
||||
});
|
||||
@@ -539,12 +539,13 @@ describe("address compose stage utf8 headers", () => {
|
||||
);
|
||||
|
||||
expect(reply.responseType).toBe("FACTUAL_LIST");
|
||||
expect(reply.text).toContain("Собран подтвержденный срез открытых договоров");
|
||||
expect(reply.text).toContain("Результат: подтвержденный срез договоров с открытыми взаиморасчетами на дату.");
|
||||
expect(reply.text).toContain("Управленческий вид: по каждому договору показаны чистый остаток и состав по типам открытых расчетов.");
|
||||
expect(reply.text).toContain("Базовая единица детализации: одна строка = один договор, один контрагент и один тип открытого остатка.");
|
||||
expect(reply.text).toContain("Блок 4. Чистый открытый остаток по договорам");
|
||||
expect(reply.text).toContain("Блок 6. Коммерческие кредиторские компоненты");
|
||||
expect(reply.text).toContain("Коротко: на 31.03.2020 подтверждено открытых договоров");
|
||||
expect(reply.text).toContain("Это подтвержденный срез договоров с открытыми взаиморасчетами на дату.");
|
||||
expect(reply.text).toContain("По каждому договору показаны чистый остаток и состав по типам открытых расчетов.");
|
||||
expect(reply.text).toContain("Одна строка = один договор, один контрагент и один тип открытого остатка.");
|
||||
expect(reply.text).toContain("Чистый открытый остаток по договорам");
|
||||
expect(reply.text).toContain("Коммерческие кредиторские компоненты");
|
||||
expect(reply.text).not.toContain("Блок 1");
|
||||
expect(reply.semantics?.result_mode).toBe("confirmed_balance");
|
||||
expect(reply.semantics?.balance_confirmed).toBe(true);
|
||||
});
|
||||
@@ -586,15 +587,74 @@ describe("address compose stage utf8 headers", () => {
|
||||
}
|
||||
);
|
||||
|
||||
expect(reply.text).toContain("Блок 4. Чистый открытый остаток по договорам");
|
||||
expect(reply.text).toContain("Блок 5. Коммерческие дебиторские компоненты");
|
||||
expect(reply.text).toContain("Блок 6. Коммерческие кредиторские компоненты");
|
||||
expect(reply.text).toContain("Блок 10. Спорные/некачественно нормализованные позиции");
|
||||
expect(reply.text).toContain("Чистый открытый остаток по договорам");
|
||||
expect(reply.text).toContain("Коммерческие дебиторские компоненты");
|
||||
expect(reply.text).toContain("Коммерческие кредиторские компоненты");
|
||||
expect(reply.text).toContain("Спорные и некачественно нормализованные позиции");
|
||||
expect(reply.text).not.toContain("Блок 1");
|
||||
expect(reply.text).toContain("брутто компонентов");
|
||||
expect(reply.text).not.toContain("счета: 62.01; 0");
|
||||
expect(reply.text).toContain("договор не похож на устойчивый договорный реквизит");
|
||||
});
|
||||
|
||||
it("renders confirmed payables snapshot business-first without numbered report framing", () => {
|
||||
const reply = composeFactualReply(
|
||||
"payables_confirmed_as_of_date",
|
||||
[
|
||||
{
|
||||
period: "2020-05-31T23:59:59Z",
|
||||
registrator: "Остатки на дату",
|
||||
account_dt: "",
|
||||
account_kt: "60.01",
|
||||
amount: 125000,
|
||||
analytics: ["ООО Ромашка", "Договор №19/15"]
|
||||
}
|
||||
],
|
||||
{
|
||||
asOfDate: "2020-05-31",
|
||||
useRubCurrency: true
|
||||
}
|
||||
);
|
||||
|
||||
expect(reply.responseType).toBe("FACTUAL_LIST");
|
||||
expect(reply.text).toContain("Коротко: подтвержденный долг к оплате на 31.05.2020");
|
||||
expect(reply.text).toContain("Это подтвержденный срез обязательств к оплате");
|
||||
expect(reply.text).toContain("Что учтено");
|
||||
expect(reply.text).toContain("Сводка");
|
||||
expect(reply.text).toContain("Категории обязательств");
|
||||
expect(reply.text).toContain("Подтвержденные позиции к оплате");
|
||||
expect(reply.text).not.toContain("Блок 1");
|
||||
});
|
||||
|
||||
it("renders confirmed receivables snapshot business-first without numbered report framing", () => {
|
||||
const reply = composeFactualReply(
|
||||
"receivables_confirmed_as_of_date",
|
||||
[
|
||||
{
|
||||
period: "2020-05-31T23:59:59Z",
|
||||
registrator: "Остатки на дату",
|
||||
account_dt: "62.01",
|
||||
account_kt: "",
|
||||
amount: 84000,
|
||||
analytics: ["ООО Ромашка", "Договор №19/15"]
|
||||
}
|
||||
],
|
||||
{
|
||||
asOfDate: "2020-05-31",
|
||||
useRubCurrency: true
|
||||
}
|
||||
);
|
||||
|
||||
expect(reply.responseType).toBe("FACTUAL_LIST");
|
||||
expect(reply.text).toContain("Коротко: подтвержденная дебиторская задолженность на 31.05.2020");
|
||||
expect(reply.text).toContain("Это подтвержденный срез дебиторской задолженности");
|
||||
expect(reply.text).toContain("Что учтено");
|
||||
expect(reply.text).toContain("Сводка");
|
||||
expect(reply.text).toContain("Категории дебиторской задолженности");
|
||||
expect(reply.text).toContain("Подтвержденные позиции к получению");
|
||||
expect(reply.text).not.toContain("Блок 1");
|
||||
});
|
||||
|
||||
it("renders period coverage summary for management profile intent", () => {
|
||||
const reply = composeFactualReply("period_coverage_profile", [
|
||||
{
|
||||
@@ -3284,12 +3344,13 @@ describe("address query limited taxonomy and stage diagnostics", { timeout: 1500
|
||||
expect(reply.toLowerCase()).toContain("shortlist");
|
||||
} else {
|
||||
expect(result?.debug.balance_confirmed).toBe(true);
|
||||
expect(reply).toContain("Итого подтвержденный долг");
|
||||
expect(reply).toMatch(/Блок\s+(?:\*\*1\*\*|1)\.\s+Статус результата/u);
|
||||
expect(reply).toMatch(/\n\nБлок\s+(?:\*\*2\*\*|2)\.\s+Что учтено/u);
|
||||
expect(reply).toMatch(/\n\nБлок\s+(?:\*\*3\*\*|3)\.\s+Сводка/u);
|
||||
expect(reply).toMatch(/\n\nБлок\s+(?:\*\*4\*\*|4)\.\s+Категории обязательств/u);
|
||||
expect(reply).toMatch(/\n\nБлок\s+(?:\*\*5\*\*|5)\.\s+Подтвержденные позиции к оплате/u);
|
||||
expect(reply).toContain("Коротко: подтвержденный долг к оплате");
|
||||
expect(reply).toContain("Это подтвержденный срез обязательств к оплате");
|
||||
expect(reply).toMatch(/\n\nЧто учтено/u);
|
||||
expect(reply).toMatch(/\n\nСводка/u);
|
||||
expect(reply).toMatch(/\n\nКатегории обязательств/u);
|
||||
expect(reply).toMatch(/\n\nПодтвержденные позиции к оплате/u);
|
||||
expect(reply).not.toContain("Блок 1");
|
||||
expect(reply).not.toContain("эвристический");
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user