v0.5.11: /export публичный (временно, с заделом на Keycloak SSO)

Изменения:
- server.js: публичный GET /export до всей авторизации
  🔮 Для Keycloak SSO: раскомментировать auth.bearerMiddleware
- Удалён ошибочно созданный src/routes/exp.js
- Обновлены тесты: /export доступен без авторизации
This commit is contained in:
2026-06-02 18:12:35 +03:00
parent 15b458eb35
commit 6bbd0fe1e2
3 changed files with 35 additions and 13 deletions
+8 -6
View File
@@ -240,13 +240,15 @@ function cidr(ip) { return ip.includes('/') ? ip : ip + '/32'; }
// ══════════════════════════════════════════════════
console.log('── ТЗ 4.7: Export ──');
{
// 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 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}`);
// 4.7a: /export — публичный, без авторизации (ВРЕМЕННО)
const r = await req.get('/export');
log(r.status === 200, '4.7a: GET /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');
// 4.7c: /export содержит добавленный CIDR
const cr = await req.post('/api/v1/entries').set(bearer(tokUser)).send({ value: C.A, comment: 'export-test' });
const r2 = await req.get('/export');
log(r2.text.includes(cidr(C.A)), '4.7c: /export содержит добавленный CIDR');
}
// ══════════════════════════════════════════════════