set('admin_access.trusted_ranges', ['10.66.0.0/24', '127.0.0.1', '62.178.50.33']); config()->set('admin_access.structural_ranges', ['10.66.0.0/24', '127.0.0.1']); $html = $this->actingAs(admin(), 'operator') ->get(route('admin.settings', ['tab' => 'security'])) ->assertOk() ->getContent(); // Der Vermerk „nicht entfernbar" darf nicht mehr auf die Bueroadresse // zutreffen — sie steht in der Warnzeile, mit dem Weg heraus. expect($html)->toContain(__('admin_settings.console_env_note')) ->and($html)->toContain('62.178.50.33'); }); it('laesst die zwei strukturellen Eintraege in Ruhe', function () { config()->set('admin_access.trusted_ranges', ['10.66.0.0/24', '127.0.0.1']); $html = $this->actingAs(admin(), 'operator') ->get(route('admin.settings', ['tab' => 'security'])) ->assertOk() ->getContent(); expect($html)->toContain(__('admin_settings.console_vpn_note')) // Ohne handgemachte Eintraege gibt es auch nichts zu warnen. ->and($html)->not->toContain(__('admin_settings.console_env_note')); }); it('nennt einen Host-Zugang so, wie der Host heute heisst', function () { // Ein Zugang bekommt seinen Namen einmal beim Anlegen. Wird der Host spaeter // umbenannt, zeigte die Liste weiter den alten: „pve-fns-1" neben einem // Host, der laengst „fsn-01" hiess. Zwei Namen fuer dieselbe Maschine. $host = \App\Models\Host::factory()->create(['name' => 'fsn-01']); \App\Models\VpnPeer::factory()->create([ 'host_id' => $host->id, 'name' => 'pve-fns-1', 'kind' => 'host', ]); $html = $this->actingAs(admin(), 'operator')->get(route('admin.vpn'))->assertOk()->getContent(); expect($html)->toContain('fsn-01') ->and($html)->not->toContain('pve-fns-1'); });