Files
preland/tests/check-upload-admission.php
T
Panfilov Konstantin 2f76438226
deploy-preland / deploy barbariskatest (push) Successful in 20s
fix: constrain picker and reject oversized uploads safely
2026-10-16 06:31:03 +03:00

26 lines
1.2 KiB
PHP

<?php
declare(strict_types=1);
$form = file_get_contents(dirname(__DIR__) . '/components/form.php');
$failures = [];
foreach ([
"\$basePickerAccept = 'image/jpeg,image/png,image/gif,image/webp,image/bmp,image/avif,image/heic,image/heif,image/jxl,image/tiff," => 'Preland должен ограничивать штатный picker поддерживаемыми raster-контейнерами.',
'accept="<?= htmlspecialchars($basePickerAccept' => 'Preland должен передать допустимые типы в штатный file input.',
'picker_accept' => 'Preland должен получать актуальный accept из API policy для PDF.',
'max_file_size_bytes' => 'Preland должен получить лимит размера для preflight без передачи гигабайтного файла.',
'rejectOversizedFile' => 'Preland обязан создать Tour-отказ без загрузки oversized байтов.',
] as $needle => $message) {
if ($form === false || !str_contains($form, $needle)) {
$failures[] = $message;
}
}
if ($failures !== []) {
fwrite(STDERR, "FAILED\n- " . implode("\n- ", $failures) . "\n");
exit(1);
}
fwrite(STDOUT, "OK: preland upload admission\n");