LMIV-SNACKAUTOMAT/test_routes.php

73 lines
2.5 KiB
PHP

<?php
// Direkter Test der öffentlichen Route
require_once 'vendor/autoload.php';
// Laravel App initialisieren ohne Boot (um Extension-Fehler zu vermeiden)
$app = require_once 'bootstrap/app.php';
// HTTP-Simulation
$request = new \Illuminate\Http\Request();
$request->server->set('REQUEST_URI', '/demo-firma/maschine/VM001');
$request->server->set('REQUEST_METHOD', 'GET');
try {
echo "=== ROUTE TEST ===\n";
echo "Testing: /demo-firma/maschine/VM001\n\n";
// Router direkt testen
$router = $app->make('router');
$routes = $router->getRoutes();
echo "Verfügbare vending.public.machine Route:\n";
foreach ($routes as $route) {
if ($route->getName() === 'vending.public.machine') {
echo "Pattern: " . $route->uri() . "\n";
echo "Controller: " . $route->getActionName() . "\n";
echo "Parameters: " . implode(', ', $route->parameterNames()) . "\n";
break;
}
}
echo "\n=== DATABASE TEST ===\n";
// Direkter DB-Test ohne Laravel Boot
$db = new PDO(
'mysql:host=192.168.178.201;dbname=lmiv_snackautomat;charset=utf8mb4',
'lmiv_snackautomat',
'NickesDBUser#2009'
);
// Tenant-Daten prüfen
$stmt = $db->query("SELECT id, name, slug, public_slug FROM tenants WHERE public_slug = 'demo-firma'");
$tenant = $stmt->fetch(PDO::FETCH_ASSOC);
if ($tenant) {
echo "Tenant gefunden:\n";
echo "ID: {$tenant['id']}\n";
echo "Name: {$tenant['name']}\n";
echo "Slug: {$tenant['slug']}\n";
echo "Public Slug: {$tenant['public_slug']}\n\n";
// Maschine prüfen
$stmt = $db->prepare("SELECT id, name, machine_number, location FROM vending_machines WHERE tenant_id = ? AND machine_number = ?");
$stmt->execute([$tenant['id'], 'VM001']);
$machine = $stmt->fetch(PDO::FETCH_ASSOC);
if ($machine) {
echo "Automat gefunden:\n";
echo "ID: {$machine['id']}\n";
echo "Name: {$machine['name']}\n";
echo "Machine Number: {$machine['machine_number']}\n";
echo "Location: {$machine['location']}\n";
} else {
echo "FEHLER: Automat VM001 für Tenant nicht gefunden!\n";
}
} else {
echo "FEHLER: Tenant mit public_slug 'demo-firma' nicht gefunden!\n";
}
} catch (Exception $e) {
echo "FEHLER: " . $e->getMessage() . "\n";
echo "Stack trace:\n" . $e->getTraceAsString() . "\n";
}