Fix profile and Breeze tests to pass

This commit is contained in:
PovilasKorop 2024-09-20 14:40:29 +03:00
parent 77817b0b93
commit ad923742f0
6 changed files with 32 additions and 11 deletions

View File

@ -16,7 +16,8 @@ class ProfileUpdateRequest extends FormRequest
public function rules(): array public function rules(): array
{ {
return [ return [
'name' => ['required', 'string', 'max:255'], 'first_name' => ['required', 'string', 'max:255'],
'last_name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', Rule::unique(User::class)->ignore($this->user()->id)], 'email' => ['required', 'string', 'lowercase', 'email', 'max:255', Rule::unique(User::class)->ignore($this->user()->id)],
]; ];
} }

View File

@ -22,8 +22,8 @@
<env name="APP_MAINTENANCE_DRIVER" value="file"/> <env name="APP_MAINTENANCE_DRIVER" value="file"/>
<env name="BCRYPT_ROUNDS" value="4"/> <env name="BCRYPT_ROUNDS" value="4"/>
<env name="CACHE_STORE" value="array"/> <env name="CACHE_STORE" value="array"/>
<!-- <env name="DB_CONNECTION" value="sqlite"/> --> <env name="DB_CONNECTION" value="sqlite"/>
<!-- <env name="DB_DATABASE" value=":memory:"/> --> <env name="DB_DATABASE" value=":memory:"/>
<env name="MAIL_MAILER" value="array"/> <env name="MAIL_MAILER" value="array"/>
<env name="PULSE_ENABLED" value="false"/> <env name="PULSE_ENABLED" value="false"/>
<env name="QUEUE_CONNECTION" value="sync"/> <env name="QUEUE_CONNECTION" value="sync"/>

View File

@ -18,11 +18,17 @@
@method('patch') @method('patch')
<div> <div>
<x-input-label for="name" :value="__('Name')" /> <x-input-label for="first_name" :value="__('First Name')" />
<x-text-input id="name" name="name" type="text" class="mt-1 block w-full" :value="old('name', $user->name)" required autofocus autocomplete="name" /> <x-text-input id="first_name" name="first_name" type="text" class="mt-1 block w-full" :value="old('first_name', $user->first_name)" required autofocus autocomplete="first_name" />
<x-input-error class="mt-2" :messages="$errors->get('name')" /> <x-input-error class="mt-2" :messages="$errors->get('name')" />
</div> </div>
<div>
<x-input-label for="last_name" :value="__('Last Name')" />
<x-text-input id="last_name" name="last_name" type="text" class="mt-1 block w-full" :value="old('last_name', $user->last_name)" required autocomplete="last_name" />
<x-input-error class="mt-2" :messages="$errors->get('last_name')" />
</div>
<div> <div>
<x-input-label for="email" :value="__('Email')" /> <x-input-label for="email" :value="__('Email')" />
<x-text-input id="email" name="email" type="email" class="mt-1 block w-full" :value="old('email', $user->email)" required autocomplete="username" /> <x-text-input id="email" name="email" type="email" class="mt-1 block w-full" :value="old('email', $user->email)" required autocomplete="username" />

View File

@ -8,7 +8,8 @@
test('new users can register', function () { test('new users can register', function () {
$response = $this->post('/register', [ $response = $this->post('/register', [
'name' => 'Test User', 'first_name' => 'Test',
'last_name' => 'User',
'email' => 'test@example.com', 'email' => 'test@example.com',
'password' => 'password', 'password' => 'password',
'password_confirmation' => 'password', 'password_confirmation' => 'password',

View File

@ -18,7 +18,8 @@
$response = $this $response = $this
->actingAs($user) ->actingAs($user)
->patch('/profile', [ ->patch('/profile', [
'name' => 'Test User', 'first_name' => 'Test',
'last_name' => 'User',
'email' => 'test@example.com', 'email' => 'test@example.com',
]); ]);
@ -28,7 +29,8 @@
$user->refresh(); $user->refresh();
$this->assertSame('Test User', $user->name); $this->assertSame('Test', $user->first_name);
$this->assertSame('User', $user->last_name);
$this->assertSame('test@example.com', $user->email); $this->assertSame('test@example.com', $user->email);
$this->assertNull($user->email_verified_at); $this->assertNull($user->email_verified_at);
}); });
@ -39,7 +41,8 @@
$response = $this $response = $this
->actingAs($user) ->actingAs($user)
->patch('/profile', [ ->patch('/profile', [
'name' => 'Test User', 'first_name' => 'Test',
'last_name' => 'User',
'email' => $user->email, 'email' => $user->email,
]); ]);
@ -64,7 +67,7 @@
->assertRedirect('/'); ->assertRedirect('/');
$this->assertGuest(); $this->assertGuest();
$this->assertNull($user->fresh()); $this->assertSoftDeleted($user->fresh());
}); });
test('correct password must be provided to delete account', function () { test('correct password must be provided to delete account', function () {

View File

@ -2,9 +2,19 @@
namespace Tests; namespace Tests;
use Database\Seeders\PermissionSeeder;
use Database\Seeders\RoleSeeder;
use Illuminate\Foundation\Testing\TestCase as BaseTestCase; use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
abstract class TestCase extends BaseTestCase abstract class TestCase extends BaseTestCase
{ {
// protected function setUp(): void
{
parent::setUp();
$this->seed([
RoleSeeder::class,
PermissionSeeder::class,
]);
}
} }