mdview2 testfiles: LINES.MD ~250 КБ (лимит 18432) + HUGE.MD >256 КБ (кламп)

- LINES.MD: 22000->25000 строк (~250 КБ -> 16 страниц -> max_lines 18432),
  чтобы обрыв был ровно на заявленном лимите.
- HUGE.MD: ~340 КБ (проза ×4) для проверки клампа файлов >256 КБ.
- floppy кладёт HUGE.MD на диск.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 22:13:36 +03:00
parent e3342b63f3
commit a43b4d6703
4 changed files with 9571 additions and 11 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+11 -8
View File
@@ -24,13 +24,16 @@ def write(name, data):
print(f"{name}: {os.path.getsize(path)} bytes")
# --- BIG.MD: склейка README + READMEBG ×2, перекодировано в CP866 -----------
big = bytearray()
for _ in range(2):
for fn in ('README.MD', 'READMEBG.MD'):
with open(os.path.join(ROOT, fn), encoding='utf-8') as f:
big += f.read().encode('cp866', errors='replace')
write('BIG.MD', bytes(big))
# --- BIG.MD / HUGE.MD: склейка README + READMEBG, перекодировано в CP866 -----
# BIG (×2 ≈170 КБ) — успешный рендер большого файла (<256 КБ).
# HUGE (×4 ≈340 КБ) — БОЛЬШЕ 256 КБ: проверка клампа (читаются первые 256 КБ +
# строка-предупреждение TRUNC_FILE).
prose = bytearray()
for fn in ('README.MD', 'READMEBG.MD'):
with open(os.path.join(ROOT, fn), encoding='utf-8') as f:
prose += f.read().encode('cp866', errors='replace')
write('BIG.MD', bytes(prose * 2))
write('HUGE.MD', bytes(prose * 4))
# --- TABLES.MD: неровные таблицы -> исчерпание контент-кэша ------------------
# Один широкий столбец (72 симв.) на таблицу задаёт ширину; остальные ячейки
@@ -57,7 +60,7 @@ write('TABLES.MD', '\n'.join(out) + '\n')
# контент БЕЗ склейки -> кладём всё в fenced code block (verbatim, 1:1
# строка-источник = экранная строка). 22000 строк > 18432 -> TRUNC_LINES;
# контент мал (~9 ячеек/строка), кап контента не задевается.
N = 22000
N = 25000 # ~250 КБ -> 16 страниц -> max_lines = 18432; строк больше -> обрыв на 18432
out = ['# Short lines test - line limit trigger', '', '```']
out += [f'row {i:05d}' for i in range(1, N + 1)]
out.append('```')