Files
Portfolio-Codex/tests/contact-validation.test.php
2026-02-04 21:06:19 +01:00

24 lines
1.1 KiB
PHP

<?php
function assertTrue($cond, $msg) {
if (!$cond) {
fwrite(STDERR, $msg . PHP_EOL);
exit(1);
}
}
$path = __DIR__ . '/../assets/js/contact-form.js';
assertTrue(file_exists($path), 'missing contact-form.js');
$content = file_get_contents($path);
assertTrue(strpos($content, 'class FormValidator') !== false, 'missing FormValidator class');
assertTrue(strpos($content, 'validateField') !== false, 'missing validateField');
assertTrue(strpos($content, 'validateAll') !== false, 'missing validateAll');
assertTrue(strpos($content, 'handleSubmit') !== false, 'missing handleSubmit');
assertTrue(strpos($content, 'updateSubmitButton') !== false, 'missing updateSubmitButton');
assertTrue(preg_match('/addEventListener\\(\\s*[\'\"]blur[\'\"]/', $content) === 1, 'missing blur listener');
assertTrue(preg_match('/addEventListener\\(\\s*[\'\"]submit[\'\"]/', $content) === 1, 'missing submit listener');
assertTrue(strpos($content, 'input-error') !== false, 'missing input-error handling');
assertTrue(strpos($content, 'submitBtn.disabled') !== false, 'missing submit disable');
fwrite(STDOUT, "OK\n");