<?php
// Uključite funkciju to_vocative iz vašeg functions.php fajla
require_once 'includes/functions.php';

// Test slučajevi - različiti formati imena i prezimena
$test_cases = [
    // Uobičajen format "Ime Prezime"
    'Aleksandar Petrović' => 'Aleksandre',
    'Predrag Miličić' => 'Predraže',
    'Marko Jovanović' => 'Marko',
    'Jovan Nikolić' => 'Jovane',
    'Petar Đorđević' => 'Petre',
    
    // Format "Prezime Ime"
    'Milic Predrag' => 'Predraže',
    'Petrović Aleksandar' => 'Aleksandre',
    'Jovanović Marko' => 'Marko',
    'Stojanović Nikola' => 'Nikola',
    
    // Mala slova
    'aleksandar petrović' => 'Aleksandre',
    'milic predrag' => 'Predraže',
    
    // Velika slova
    'ALEKSANDAR PETROVIĆ' => 'Aleksandre',
    'MILIC PREDRAG' => 'Predraže',
    
    // Sa srednjim imenom
    'Nikola Petar Đorđević' => 'Nikola',
    'Đorđević Nikola Petar' => 'Nikola',
    
    // Ženska imena
    'Milica Jovanović' => 'Milice',
    'Jovanović Milica' => 'Milice',
    'Ana Marić' => 'Ana',
    'Marić Ana' => 'Ana',
    'Marija Petrović' => 'Marija',
    
    // Specifični slučajevi
    'Miloš Nedić' => 'Milošu',
    'Nedić Miloš' => 'Milošu',
    'Saša Petrović' => 'Saša',
    'Vuk Karadzić' => 'Vuk'
];

// HTML stilovi za lepši prikaz
echo '<!DOCTYPE html>
<html>
<head>
    <title>Test funkcije to_vocative</title>
    <meta charset="UTF-8">
    <style>
        body { font-family: Arial, sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; }
        h1 { color: #333; }
        table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        th, td { padding: 10px; text-align: left; border-bottom: 1px solid #ddd; }
        th { background-color: #f2f2f2; }
        .success { background-color: #d4edda; }
        .error { background-color: #f8d7da; }
        .result { font-weight: bold; }
        .expected { color: #666; }
        .actual { color: #333; }
        .conclusion { padding: 15px; margin-top: 20px; border-radius: 5px; }
    </style>
</head>
<body>
    <h1>Test funkcije to_vocative</h1>
    <p>Ova skripta testira funkciju za pretvaranje imena iz nominativa u vokativ sa različitim formatima imena i prezimena.</p>
    
    <table>
        <tr>
            <th>Uneto ime i prezime</th>
            <th>Očekivan rezultat</th>
            <th>Stvarni rezultat</th>
            <th>Status</th>
        </tr>';

$success_count = 0;
$error_count = 0;

// Testiraj svaki slučaj
foreach ($test_cases as $full_name => $expected) {
    $actual = to_vocative($full_name);
    $success = ($actual == $expected);
    
    if ($success) {
        $success_count++;
        $row_class = 'success';
        $status = '✓ OK';
    } else {
        $error_count++;
        $row_class = 'error';
        $status = '✗ Greška';
    }
    
    echo "<tr class=\"$row_class\">
            <td>$full_name</td>
            <td class=\"expected\">$expected</td>
            <td class=\"actual result\">$actual</td>
            <td>$status</td>
          </tr>";
}

$total = $success_count + $error_count;
$success_percentage = round(($success_count / $total) * 100);

echo '</table>';

if ($error_count > 0) {
    echo "<div class=\"conclusion error\">
            <strong>Rezultat testiranja:</strong> Uspešno: $success_count / $total ($success_percentage%) - Pronađeno je $error_count problema koje treba popraviti.
          </div>";
} else {
    echo "<div class=\"conclusion success\">
            <strong>Rezultat testiranja:</strong> Sve je prošlo uspešno! 100% testova je prošlo ($total/$total).
          </div>";
}

echo '</body></html>';
?>