bootstrapWorker(); $pipelineAgent = $container->get(SchedulerQueuePipelineAgent::class); echo "โœ… Framework bootstrapped successfully\n"; echo "โœ… Pipeline Agent retrieved\n\n"; // Test 1: Pipeline Health Check echo "๐Ÿ“‹ Test 1: Pipeline Health Check\n"; echo "-------------------------------\n"; $healthCheck = $pipelineAgent->checkPipelineHealth(); echo "๐Ÿฅ Health Check Results:\n"; echo " Overall Status: " . $healthCheck['overall_status'] . "\n"; echo " Scheduler Health: " . $healthCheck['scheduler_health']['status'] . "\n"; echo " Queue Health: " . $healthCheck['queue_health']['status'] . "\n"; echo " Database Health: " . $healthCheck['database_health']['status'] . "\n"; echo " Integration Health: " . $healthCheck['integration_health']['status'] . "\n"; echo "\n"; // Test 2: Pipeline Status echo "๐Ÿ“‹ Test 2: Pipeline Status\n"; echo "------------------------\n"; $status = $pipelineAgent->getPipelineStatus(); echo "๐Ÿ“Š Pipeline Status:\n"; echo " Due Tasks: " . $status['scheduler']['due_tasks'] . "\n"; echo " Queue Size: " . $status['queue']['current_size'] . "\n"; echo " Total Jobs: " . $status['database']['total_jobs'] . "\n"; echo " Active Jobs: " . $status['database']['active_jobs'] . "\n"; echo " Failed Jobs: " . $status['database']['failed_jobs'] . "\n"; echo " Completed Jobs: " . $status['database']['completed_jobs'] . "\n"; echo "\n"; // Test 3: Pipeline Metrics echo "๐Ÿ“‹ Test 3: Pipeline Metrics (1 hour)\n"; echo "-----------------------------------\n"; $metrics = $pipelineAgent->collectPipelineMetrics('1hour'); echo "๐Ÿ“ˆ Pipeline Metrics:\n"; echo " Timeframe: " . $metrics['timeframe'] . "\n"; echo " Collection Time: " . $metrics['collection_time'] . "\n"; echo " Scheduler Metrics:\n"; echo " - Tasks Executed: " . $metrics['scheduler_metrics']['tasks_executed'] . "\n"; echo " - Success Rate: " . $metrics['scheduler_metrics']['success_rate'] . "%\n"; echo " Queue Metrics:\n"; echo " - Jobs Processed: " . $metrics['queue_metrics']['jobs_processed'] . "\n"; echo " - Success Rate: " . $metrics['queue_metrics']['success_rate'] . "%\n"; echo "\n"; // Test 4: Pipeline Diagnostics echo "๐Ÿ“‹ Test 4: Pipeline Diagnostics\n"; echo "------------------------------\n"; $diagnostics = $pipelineAgent->runPipelineDiagnostics(); echo "๐Ÿ” Diagnostics Results:\n"; echo " Performance Issues: " . count($diagnostics['performance_issues']) . "\n"; echo " Queue Bottlenecks: " . count($diagnostics['queue_bottlenecks']) . "\n"; echo " Scheduler Problems: " . count($diagnostics['scheduler_problems']) . "\n"; echo " Database Issues: " . count($diagnostics['database_issues']) . "\n"; echo " Integration Problems: " . count($diagnostics['integration_problems']) . "\n"; echo "\n"; // Test 5: Integration Test echo "๐Ÿ“‹ Test 5: Pipeline Integration Test\n"; echo "----------------------------------\n"; $integrationTest = $pipelineAgent->testPipelineIntegration(); echo "๐Ÿงช Integration Test Results:\n"; echo " Test Duration: " . $integrationTest['test_duration_seconds'] . "s\n"; echo " Overall Result: " . $integrationTest['results']['overall_result'] . "\n"; if (isset($integrationTest['results']['scheduler_test'])) { echo " Scheduler Test: " . $integrationTest['results']['scheduler_test']['status'] . "\n"; } if (isset($integrationTest['results']['queue_test'])) { echo " Queue Test: " . $integrationTest['results']['queue_test']['status'] . "\n"; } if (isset($integrationTest['results']['integration_test'])) { echo " Integration Test: " . $integrationTest['results']['integration_test']['status'] . "\n"; } if (isset($integrationTest['results']['performance_test'])) { echo " Performance Test: " . $integrationTest['results']['performance_test']['status'] . "\n"; $benchmark = $integrationTest['results']['performance_test']['benchmark_results']; echo " - Jobs/Second: " . $benchmark['jobs_per_second'] . "\n"; echo " - Avg Latency: " . $benchmark['average_latency_ms'] . "ms\n"; echo " - Memory Usage: " . $benchmark['memory_usage_mb'] . "MB\n"; } echo "\n"; // Test 6: Job Analysis echo "๐Ÿ“‹ Test 6: Job Pattern Analysis\n"; echo "-----------------------------\n"; $jobAnalysis = $pipelineAgent->analyzeJobPatterns(50); echo "๐Ÿ“Š Job Analysis Results:\n"; echo " Job Type Distribution: " . count($jobAnalysis['job_type_distribution']) . " types\n"; echo " Execution Patterns: " . count($jobAnalysis['execution_patterns']) . " patterns\n"; echo " Failure Analysis: " . count($jobAnalysis['failure_analysis']) . " categories\n"; echo "\n"; echo "๐ŸŽฏ Pipeline Agent Test Summary:\n"; echo "==============================\n"; echo "โœ… Health Check: Working\n"; echo "โœ… Status Monitoring: Working\n"; echo "โœ… Metrics Collection: Working\n"; echo "โœ… Diagnostics: Working\n"; echo "โœ… Integration Testing: Working\n"; echo "โœ… Job Analysis: Working\n"; echo "\n"; echo "๐Ÿš€ Pipeline Agent is fully operational!\n"; } catch (Exception $e) { echo "โŒ Pipeline Agent test failed: " . $e->getMessage() . "\n"; echo "Stack trace:\n" . $e->getTraceAsString() . "\n"; exit(1); } echo "\n๐ŸŽฏ Pipeline Agent test completed successfully!\n";