auditionadmin/tests/Feature/app/Http/Controllers/Admin/AuditionSettingsTest.php

27 lines
999 B
PHP

<?php
use App\Models\SiteSetting;
use Illuminate\Foundation\Testing\RefreshDatabase;
uses(RefreshDatabase::class);
it('denies access to a non-admin user', function () {
$this->get(route('audition-settings'))->assertRedirect(route('home'));
$this->post(route('audition-settings-save'))->assertRedirect(route('home'));
actAsNormal();
$this->get(route('audition-settings'))->assertRedirect(route('dashboard'));
$this->post(route('audition-settings-save'))->assertRedirect(route('dashboard'));
actAsTab();
$this->get(route('audition-settings'))->assertRedirect(route('dashboard'));
$this->post(route('audition-settings-save'))->assertRedirect(route('dashboard'));
});
it('shows the audition settings page', function () {
actAsAdmin();
$response = $this->get(route('audition-settings'))->assertOk()
->assertViewIs('admin.audition-settings');
foreach (SiteSetting::all() as $setting) {
$response->assertSee($setting->setting_key);
}
});