$this->get('/')->assertSuccessful()); it('immobilien page loads', fn () => $this->get('/immobilien')->assertSuccessful()); it('immobilien expose loads', fn () => $this->get('/immobilien/azizi-creek-views-4')->assertSuccessful()); it('netzwerk page loads', fn () => $this->get('/netzwerk')->assertSuccessful()); it('magazin list loads', fn () => $this->get('/magazin')->assertSuccessful()); it('magazin article 1 loads', fn () => $this->get('/magazin/1')->assertSuccessful()); it('magazin article 2 loads', fn () => $this->get('/magazin/2')->assertSuccessful()); it('magazin article 3 loads', fn () => $this->get('/magazin/3')->assertSuccessful()); it('magazin article 4 loads', fn () => $this->get('/magazin/4')->assertSuccessful()); it('magazin article 5 loads', fn () => $this->get('/magazin/5')->assertSuccessful()); it('about page loads', fn () => $this->get('/about')->assertSuccessful()); it('contact page loads', fn () => $this->get('/contact')->assertSuccessful()); it('faq page loads', fn () => $this->get('/faq')->assertSuccessful()); // ======================================== // Redirects // ======================================== it('interior redirects to netzwerk', fn () => $this->get('/interior')->assertRedirect('/netzwerk')); it('partner redirects to netzwerk', fn () => $this->get('/partner')->assertRedirect('/netzwerk')); it('ecosystem redirects to partner', fn () => $this->get('/ecosystem')->assertRedirect('/partner')); // ======================================== // Dev/Archiv-Seiten // ======================================== it('dev sitemap loads', fn () => $this->get('/dev/sitemap')->assertSuccessful()); it('dev immobilien v1 loads', fn () => $this->get('/dev/immobilien-v1')->assertSuccessful()); it('dev interior v1 loads', fn () => $this->get('/dev/interior-v1')->assertSuccessful()); it('dev partner v1 loads', fn () => $this->get('/dev/partner-v1')->assertSuccessful()); // ======================================== // 404 für ungültige Routen // ======================================== it('invalid immobilien slug returns 404', fn () => $this->get('/immobilien/nonexistent')->assertNotFound()); // ======================================== // Announcement Bar auf allen Seiten // ======================================== it('announcement bar visible on homepage', fn () => $this->get('/')->assertSee('Azizi Creek Views 4')); it('announcement bar visible on about', fn () => $this->get('/about')->assertSee('Azizi Creek Views 4')); // ======================================== // Kritische Inhalte vorhanden // ======================================== it('homepage has navigation', fn () => $this->get('/')->assertSee('Immobilien')->assertSee('Netzwerk')->assertSee('Magazin')); it('immobilien has all five sections', function () { $this->get('/immobilien') ->assertSee('Dynamik') ->assertSee('Investment in Dubai') ->assertSee('Kaufprozess') ->assertSee('Meine Aufgabe') ->assertSee('Investor'); }); it('netzwerk has teaser cards', fn () => $this->get('/netzwerk')->assertSee('Einrichtungsnetzwerk')->assertSee('In Entwicklung')); it('magazin has all five articles', function () { $this->get('/magazin') ->assertSee('Escrow-System') ->assertSee('Al Jaddaf') ->assertSee('Turnkey') ->assertSee('Supply-Chain') ->assertSee('Local for Local'); });