fix: export build403Html, add unit test for undefined IP fallback

This commit is contained in:
Kirill
2026-05-23 11:09:21 +05:00
parent 5fdf49658f
commit fd720572e7
2 changed files with 14 additions and 2 deletions
+13 -1
View File
@@ -1,6 +1,6 @@
import Fastify from 'fastify'
import { afterEach, beforeEach, describe, expect, it } from 'vitest'
import { registerIpGate } from '../ip-gate.js'
import { build403Html, registerIpGate } from '../ip-gate.js'
function buildApp() {
const app = Fastify({ logger: false, trustProxy: true })
@@ -55,6 +55,18 @@ describe('registerIpGate', () => {
expect(res.body).toContain('9.9.9.9')
})
it('build403Html показывает "не определён" когда IP не передан', () => {
const html = build403Html()
expect(html).toContain('не определён')
expect(html).toContain('Любимый Креатив')
})
it('build403Html показывает переданный IP', () => {
const html = build403Html('9.9.9.9')
expect(html).toContain('9.9.9.9')
expect(html).not.toContain('не определён')
})
it('403-страница показывает IP по умолчанию (127.0.0.1) когда remoteAddress не указан', async () => {
process.env.SITE_ACCESS_IPS = '1.2.3.4'
const res = await app.inject({ method: 'GET', url: '/test' })
+1 -1
View File
@@ -12,7 +12,7 @@ function normalizeIp(ip) {
return ip
}
function build403Html(ip) {
export function build403Html(ip) {
const safeIp = ip || 'не определён'
return `<!DOCTYPE html>
<html lang="ru">