39 lines
888 B
PHP
39 lines
888 B
PHP
<?php
|
|
|
|
use App\Models\Role;
|
|
use App\Models\User;
|
|
|
|
test('role index requires authentication', function () {
|
|
$this->get('/role')->assertRedirect('/login');
|
|
});
|
|
|
|
test('authenticated users can view the role index', function () {
|
|
Role::query()->create(['name' => 'Admin']);
|
|
Role::query()->create(['name' => 'Editor']);
|
|
|
|
$response = $this
|
|
->actingAs(User::factory()->create())
|
|
->get('/role');
|
|
|
|
$response
|
|
->assertSuccessful()
|
|
->assertSee('Roles')
|
|
->assertSee('Admin')
|
|
->assertSee('Editor');
|
|
});
|
|
|
|
test('authenticated users can create a role', function () {
|
|
$response = $this
|
|
->actingAs(User::factory()->create())
|
|
->post('/role', [
|
|
'name' => 'Manager',
|
|
]);
|
|
|
|
$response
|
|
->assertRedirect('/role');
|
|
|
|
$this->assertDatabaseHas('roles', [
|
|
'name' => 'Manager',
|
|
]);
|
|
});
|