getMessage() . "\n"; } echo "\n2. Testing Module Loading...\n"; try { $modules = [ 'robots_txt', 'sitemap_xml', 'llms_txt', 'google_setup', 'structured_data', 'meta_tags', 'seo_health', 'head_footer', 'visual_elements_gallery' ]; foreach ($modules as $module_name) { $module = $plugin->get_module($module_name); if ($module) { echo "✓ Module '$module_name' loaded successfully\n"; } else { echo "✗ Module '$module_name' failed to load\n"; } } } catch (Exception $e) { echo "✗ Error testing modules: " . $e->getMessage() . "\n"; } echo "\n3. Testing Utils Class...\n"; try { if (class_exists('TigerStyleSEO_Utils')) { echo "✓ Utils class loaded\n"; // Test business days parser $days = TigerStyleSEO_Utils::parse_business_days('Mo-Fr'); if (is_array($days) && count($days) === 5) { echo "✓ Business days parser working\n"; } else { echo "✗ Business days parser failed\n"; } // Test format_bytes $formatted = TigerStyleSEO_Utils::format_bytes(1024); if ($formatted === '1 KB') { echo "✓ Bytes formatter working\n"; } else { echo "✗ Bytes formatter failed\n"; } } else { echo "✗ Utils class not found\n"; } } catch (Exception $e) { echo "✗ Error testing utils: " . $e->getMessage() . "\n"; } echo "\n4. Testing Admin Classes...\n"; try { if (class_exists('TigerStyleSEO_Admin')) { echo "✓ Admin class loaded\n"; } else { echo "✗ Admin class not found\n"; } if (class_exists('TigerStyleSEO_Admin_Pages')) { echo "✓ Admin Pages class loaded\n"; } else { echo "✗ Admin Pages class not found\n"; } } catch (Exception $e) { echo "✗ Error testing admin classes: " . $e->getMessage() . "\n"; } echo "\n=== Test Complete ===\n"; echo "If all tests show ✓, the modular system is working correctly!\n";