v0.5.11: зачистка мёртвого кода + новые интеграционные тесты

Удалено:
- src/routes/*.js (5 файлов) — старая монолитная архитектура
- views/dev-login.ejs — старый dev-логин
- tests/debug-session.js — тесты старой архитектуры

Добавлено:
- safeReturn в src/auth.js
- Новые интеграционные тесты tests/integration.js (67 тестов, UI+API)

Обновлено:
- tests/run-tests.js — убраны старые require, добавлены новые модули
- tests/tz-compliance.js — /exp → /api/v1/entries/export
- server.js — убран require('./src/routes/exp')
This commit is contained in:
2026-06-02 18:04:33 +03:00
parent 4694b7e8a6
commit 15b458eb35
12 changed files with 357 additions and 1767 deletions
+6 -8
View File
@@ -240,15 +240,13 @@ function cidr(ip) { return ip.includes('/') ? ip : ip + '/32'; }
// ══════════════════════════════════════════════════
console.log('── ТЗ 4.7: Export ──');
{
// 4.7a: /exp публичный (временный обходной путь)
const r = await req.get('/exp');
log(r.status === 200, '4.7a: GET /exp → 200 (без авторизации)');
log((r.headers['content-type'] || '').includes('text/plain'), '4.7b: Content-Type text/plain');
// 4.7c: /exp содержит только активные записи (проверим через добавление)
// 4.7a: /api/v1/entries/export (требует Bearer token)
const cr = await req.post('/api/v1/entries').set(bearer(tokUser)).send({ value: C.A, comment: 'export-test' });
const r2 = await req.get('/exp');
log(r2.text.includes(cidr(C.A)), '4.7c: /exp содержит добавленный CIDR');
const r = await req.get('/api/v1/entries/export').set(bearer(tokUser));
log(r.status === 200, '4.7a: GET /api/v1/entries/export → 200', `status=${r.status}`);
log((r.headers['content-type'] || '').includes('text/plain'), '4.7b: Content-Type text/plain');
log(r.text.includes(cidr(C.A)), '4.7c: export содержит добавленный CIDR');
}
// ══════════════════════════════════════════════════