=== PHASE 1 FINAL VERIFY ===
could not find driver (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: grzicofn_sis, SQL: select exists (select 1 from information_schema.tables where table_schema = schema() and table_name = 'institutions' and table_type in ('BASE TABLE', 'SYSTEM VERSIONED')) as `exists`)
Illuminate\Database\Connection->runQueryCallback(string, array, object(Closure))Illuminate\Database\Connection->runQueryCallback(string, array, object(Closure))Illuminate\Database\Connection->run(string, array, object(Closure))Illuminate\Database\Connection->select(string, array, boolean)Illuminate\Database\Connection->selectOne(string, array, boolean)Illuminate\Database\Connection->scalar(string)Illuminate\Database\Schema\Builder->hasTable(string)Illuminate\Support\Facades\Facade::__callStatic(string, array)57 'institutions', 'campuses', 'faculties', 'areas_of_study', 'programmes',
58 'programme_tracks', 'academic_sessions', 'study_plan_periods',
59 'programme_structures', 'programme_structure_items', 'academic_paths',
60 'academic_intakes', 'institution_documents',
61] as $t) {
62 ok($out, "DB table {$t}", Schema::hasTable($t));
63}
64
65ok($out, 'AreaOfStudy table name', (new AreaOfStudy)->getTable() === 'areas_of_study');
66ok($out, 'AuthorizesRequests on Controller', method_exists(new class extends \App\Http\Controllers\Controller {}, 'authorize'));
67ok($out, 'LogsActivity trait', trait_exists(\Spatie\Activitylog\Traits\LogsActivity::class));
68ok($out, 'Vite dashboard asset', str_contains(file_get_contents(public_path('build/manifest.json')), 'institution-dashboard'));
69
70// Controllers
71$controllers = glob(app_path('Http/Controllers/Institution/*.php'));
72$out['controllers'] = count($controllers);
73ok($out, 'Institution controllers count', $out['controllers'] === 12, (string) $out['controllers']);
74