64 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
<?php
 | 
						|
 | 
						|
namespace Tests\Feature\Initialize;
 | 
						|
 | 
						|
use App\Setting\NamiSettings;
 | 
						|
use Illuminate\Foundation\Testing\DatabaseTransactions;
 | 
						|
use Tests\TestCase;
 | 
						|
 | 
						|
class MiddlewareTest extends TestCase
 | 
						|
{
 | 
						|
    use DatabaseTransactions;
 | 
						|
 | 
						|
    public function testItRedirectsToInitializeRouteWhenNotInitialized(): void
 | 
						|
    {
 | 
						|
        $this->login();
 | 
						|
        $response = $this->get('/');
 | 
						|
 | 
						|
        $response->assertRedirect('/initialize');
 | 
						|
    }
 | 
						|
 | 
						|
    public function testItDoesntRedirctIfUserIsGuest(): void
 | 
						|
    {
 | 
						|
        $response = $this->get('/');
 | 
						|
 | 
						|
        $response->assertRedirect('/login');
 | 
						|
    }
 | 
						|
 | 
						|
    public function testItDoesntRedirectToInitializeRoute(): void
 | 
						|
    {
 | 
						|
        $this->login();
 | 
						|
        $response = $this->get('/initialize');
 | 
						|
 | 
						|
        $response->assertStatus(200);
 | 
						|
    }
 | 
						|
 | 
						|
    public function testItDoesntRedirectWhenAlreadyInitialized(): void
 | 
						|
    {
 | 
						|
        NamiSettings::fake([
 | 
						|
            'mglnr' => 333,
 | 
						|
            'password' => 'secret',
 | 
						|
            'default_group_id' => 555,
 | 
						|
        ]);
 | 
						|
        $this->login();
 | 
						|
 | 
						|
        $response = $this->get('/');
 | 
						|
 | 
						|
        $response->assertStatus(200);
 | 
						|
    }
 | 
						|
 | 
						|
    public function testItRedirectsHomeWhenAlreadyInitialized(): void
 | 
						|
    {
 | 
						|
        NamiSettings::fake([
 | 
						|
            'mglnr' => 333,
 | 
						|
            'password' => 'secret',
 | 
						|
            'default_group_id' => 555,
 | 
						|
        ]);
 | 
						|
        $this->login();
 | 
						|
 | 
						|
        $response = $this->get('/initialize');
 | 
						|
 | 
						|
        $response->assertRedirect('/');
 | 
						|
    }
 | 
						|
}
 |