<?php
require_once __DIR__ . '/../bootstrap.php';
use Gestoreasy\Core\Kernel;
use Gestoreasy\Core\Http\Request;
use Gestoreasy\Core\Auth\Jwt;

// Prepare kernel and auth
$kernel = new Kernel();
$payload = [ 'sub' => 1, 'email' => 'admin@local', 'name' => 'Admin', 'tenant' => 'default', 'roles' => ['admin'] ];
$token = Jwt::sign($payload);
$authHeaders = [ 'x-tenant-id' => 'default', 'authorization' => 'Bearer ' . $token ];

// Request the vendas/notas page
$req = new Request($authHeaders, [], [], [], 'GET', '/vendas/notas');
$res = $kernel->handle($req);

if (($res->status ?? $res->statusCode ?? 500) !== 200) {
    echo "FAIL: Página /vendas/notas deve responder 200, got " . ($res->status ?? $res->statusCode ?? 'N/A') . "\n";
    exit(1);
}

$html = is_string($res->body ?? null) ? $res->body : '';
if (strpos($html, 'Notas Fiscais') === false) {
    echo "FAIL: Título 'Notas Fiscais' deve estar presente" . "\n";
    exit(1);
}
if (strpos($html, 'Histórico de emissões de NFC-e') === false) {
    echo "FAIL: Subtítulo de histórico deve estar presente" . "\n";
    exit(1);
}
if (strpos($html, '<table') === false || strpos($html, 'Emissões NFC-e') === false) {
    echo "FAIL: Tabela de emissões deve estar presente" . "\n";
    exit(1);
}

echo "PASS: SalesNotasViewTest (render da página /vendas/notas)." . "\n";
exit(0);
?>