✅ Fixed bulk conversion getting stuck on missing files ✅ Added robust error handling and timeout protection ✅ Improved JavaScript response parsing ✅ Added file existence validation ✅ Fixed missing PHP class imports ✅ Added comprehensive try-catch error recovery 🔧 Key fixes: - File existence checks before conversion attempts - 30-second timeout protection per file - Graceful handling of 500 errors and JSON parsing issues - Automatic continuation to next file on failures - Cache busting for JavaScript updates 🎯 Result: Bulk conversion now completes successfully even with missing files 🚀 Generated with Claude Code (https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
73 lines
2.0 KiB
PHP
73 lines
2.0 KiB
PHP
<?php
|
|
|
|
namespace HtaccessCapabilityTester\Tests\Testers;
|
|
|
|
use HtaccessCapabilityTester\HtaccessCapabilityTester;
|
|
use HtaccessCapabilityTester\TestResult;
|
|
|
|
use HtaccessCapabilityTester\Testers\RewriteTester;
|
|
use HtaccessCapabilityTester\Testers\AbstractTester;
|
|
|
|
use HtaccessCapabilityTester\Tests\FakeServer;
|
|
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class BasisTestCase extends TestCase
|
|
{
|
|
|
|
protected function assertSuccess($testResult)
|
|
{
|
|
$this->assertTrue($testResult->status, $testResult->info);
|
|
}
|
|
|
|
protected function assertFailure($testResult)
|
|
{
|
|
$this->assertFalse($testResult->status, $testResult->info);
|
|
}
|
|
|
|
protected function assertInconclusive($testResult)
|
|
{
|
|
$this->assertNull($testResult->status, $testResult->info);
|
|
}
|
|
|
|
/**
|
|
*
|
|
* @param TestResult $testResult
|
|
* @param string $expectedResult failure|success|inconclusive
|
|
*
|
|
*/
|
|
/*
|
|
protected function assertTestResult($testResult, $expectedResult)
|
|
{
|
|
if ($expectedResult == 'failure') {
|
|
$this->assertFalse($testResult->status);
|
|
} elseif ($expectedResult == 'success') {
|
|
$this->assertTrue($testResult->status);
|
|
} elseif ($expectedResult == 'inconclusive') {
|
|
$this->assertNull($testResult->status);
|
|
}
|
|
}*/
|
|
|
|
/**
|
|
* @param AbstractTester $tester
|
|
* @param array $expectedBehaviour
|
|
* @param FakeServer $fakeServer
|
|
*/
|
|
/*
|
|
protected function behaviourOnFakeServer($tester, $expectedBehaviour, $fakeServer)
|
|
{
|
|
$tester->setTestFilesLineUpper($fakeServer);
|
|
$tester->setHttpRequester($fakeServer);
|
|
|
|
// $hct = Helper::getTesterUsingFakeServer($fakeServer);
|
|
|
|
if (isset($expectedBehaviour['htaccessDisabled'])) {
|
|
$fakeServer->disallowAllDirectives = true;
|
|
$testResult = $tester->run('', '');
|
|
$this->assertTestResult($testResult, );
|
|
|
|
$this->assertFailure($testResult->status);
|
|
}
|
|
}*/
|
|
}
|