Fix studio simulation draft access

This commit is contained in:
Jeppe B
2026-06-01 23:52:18 +02:00
parent 4730eebdb4
commit c5cb0a3bfe
3 changed files with 97 additions and 34 deletions
@@ -120,7 +120,26 @@ it('wires the all-in-one self-serve studio replacement endpoints', function ():
expect($studioRoute)->toContain('modules_shelly_config');
expect($studioRoute)->toContain('modules_selfserve_sessions_force_stop');
$simulateStart = strpos($studioRoute, "/department/selfserve/studio/simulate");
$simulateEnd = strpos($studioRoute, "/department/selfserve/studio/path-outcomes/stream", $simulateStart);
expect($simulateStart)->not->toBeFalse();
expect($simulateEnd)->not->toBeFalse();
$simulateRoute = substr($studioRoute, $simulateStart, $simulateEnd - $simulateStart);
expect($simulateRoute)->toContain("requireStudioUser('list_department_selfserve_config_versions')");
expect($simulateRoute)->toContain("'list_department_selfserve_config_versions' => 'Run the self-serve studio simulator'");
expect($simulateRoute)->not->toContain('list_department_selfserve_vehicle_conditions');
expect($studioGraph)->not->toBeFalse();
$loadSimulationConfigStart = strpos($studioGraph, 'private function loadSimulationConfig');
$projectPathOutcomesStart = strpos($studioGraph, 'public function projectPathOutcomes', $loadSimulationConfigStart);
expect($loadSimulationConfigStart)->not->toBeFalse();
expect($projectPathOutcomesStart)->not->toBeFalse();
$loadSimulationConfig = substr($studioGraph, $loadSimulationConfigStart, $projectPathOutcomesStart - $loadSimulationConfigStart);
expect($loadSimulationConfig)->toContain('selectLatestByDepartmentAndStatus');
expect($loadSimulationConfig)->toContain('snapshotLegacyConfig($departmentId)');
expect($loadSimulationConfig)->not->toContain('ensureDraftFromLegacy');
expect($loadSimulationConfig)->toContain('Draft studio simulation requires list_department_selfserve_config_versions permission.');
expect($studioGraph)->toContain('department_selfserve_studio_layouts');
expect($studioGraph)->toContain('department_selfserve_path_confirmations');
expect($studioGraph)->toContain('buildGatewayWorkspace');