Files
portal/render-service/smoke.mjs
T

28 lines
1.2 KiB
JavaScript

// Смоук-проверка рисовалки на живом 2ГИС (без прокси): листинг + карточка. Печатает, достался ли
// чистый initialState с фирмами. НЕ юнит-тест (ходит в сеть). Запуск: node smoke.mjs
import { render, closeBrowser, checkProxy } from './browser.mjs';
const cases = [
['https://2gis.ru/krasnoyarsk/search/займы под залог авто', 'initialState', 'listing'],
['https://2gis.ru/krasnoyarsk/firm/70000001052966157', 'initialState', 'card'],
];
try {
const noProxy = await checkProxy(null);
console.log(`[smoke] checkProxy(null) → ${JSON.stringify(noProxy)} (ждём ok:false)`);
for (const [url, type, label] of cases) {
const data = await render(url, type, null);
let firms = 0;
try {
const s = JSON.parse(data);
const pag = s?.data?.search?.pagination;
const pk = pag && Object.keys(pag)[0];
if (pk && pag[pk]['1']) firms = pag[pk]['1'].data.length;
else firms = Object.keys(s?.data?.entity?.profile || {}).length;
} catch { /* not json */ }
console.log(`[smoke] ${label}: ${data.length}B initialState, entities≈${firms}`);
}
} finally {
await closeBrowser();
}