initial site
This commit is contained in:
commit
da5b259d06
167 files changed
+34157
No files matched your search
@@ -0,0 +1,54 @@
|
||||
// E2E стоп-листа: логин кальянщиком → стоп табака витринного микса → проверка.
|
||||
const BASE = process.env.CRM_URL ?? "http://127.0.0.1:47613";
|
||||
// F-12: креды только через окружение — в коде их нет
|
||||
const CRM_LOGIN = process.env.CRM_LOGIN;
|
||||
const CRM_PASSWORD = process.env.CRM_PASSWORD;
|
||||
if (!CRM_LOGIN || !CRM_PASSWORD) {
|
||||
console.error("Задайте CRM_LOGIN и CRM_PASSWORD (учётка кальянщика)");
|
||||
process.exit(1);
|
||||
}
|
||||
const ID = "bliss-lime";
|
||||
|
||||
const j = async (path, opts = {}) => {
|
||||
const r = await fetch(BASE + path, {
|
||||
...opts,
|
||||
headers: { "Content-Type": "application/json", ...(opts.headers || {}) },
|
||||
signal: AbortSignal.timeout(8000),
|
||||
});
|
||||
const text = await r.text();
|
||||
let data = null;
|
||||
try {
|
||||
data = JSON.parse(text);
|
||||
} catch {
|
||||
data = null;
|
||||
}
|
||||
return { status: r.status, data };
|
||||
};
|
||||
|
||||
const login = await j("/api/login", {
|
||||
method: "POST",
|
||||
body: JSON.stringify({ login: CRM_LOGIN, password: CRM_PASSWORD }),
|
||||
});
|
||||
if (login.status !== 200 || !login.data?.token) {
|
||||
console.log("E2E_LOGIN_FAIL status=" + login.status);
|
||||
process.exit(1);
|
||||
}
|
||||
const token = login.data.token;
|
||||
|
||||
const before = await j("/api/stoplist");
|
||||
const beforeIds = before.data?.stopped_tobacco ?? [];
|
||||
|
||||
const patch = await j(`/api/tobacco/${ID}`, {
|
||||
method: "PATCH",
|
||||
headers: { "X-Auth-Token": token },
|
||||
body: JSON.stringify({ stopped: true }),
|
||||
});
|
||||
|
||||
const after = await j("/api/stoplist");
|
||||
const afterIds = after.data?.stopped_tobacco ?? [];
|
||||
|
||||
console.log(
|
||||
`E2E login=${login.status} role=${login.data?.role ?? login.data?.user?.role ?? "?"} ` +
|
||||
`before=${beforeIds.length} patch=${patch.status} after=${afterIds.length} ` +
|
||||
`contains=${afterIds.includes(ID) ? 1 : 0}`,
|
||||
);
|
||||
Reference in new issue
Block a user