From 044dffefa83585a58ef0d52176da2fe77101ec07 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Sat, 2 May 2026 00:25:30 +0700 Subject: [PATCH] feat: enforce roles requirement in user management validation and UI --- app/Http/Requests/Admin/Master/UserRequest.php | 2 +- resources/js/pages/admin/master/user/create.tsx | 4 +++- resources/js/pages/admin/master/user/edit.tsx | 4 +++- tests/Feature/Admin/Master/UserTest.php | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/Http/Requests/Admin/Master/UserRequest.php b/app/Http/Requests/Admin/Master/UserRequest.php index 2f4f180..de4a9c5 100644 --- a/app/Http/Requests/Admin/Master/UserRequest.php +++ b/app/Http/Requests/Admin/Master/UserRequest.php @@ -37,7 +37,7 @@ public function rules(): array 'birth_place' => ['required', 'string', 'max:100'], 'birth_date' => ['required', 'date'], 'base_salary' => ['required', 'integer', 'min:0'], - 'roles' => ['nullable', 'array'], + 'roles' => ['required', 'array'], ]; } } diff --git a/resources/js/pages/admin/master/user/create.tsx b/resources/js/pages/admin/master/user/create.tsx index 8b37e9c..1abdf67 100644 --- a/resources/js/pages/admin/master/user/create.tsx +++ b/resources/js/pages/admin/master/user/create.tsx @@ -384,7 +384,9 @@ export default function UserCreate({ roles }: { roles: any[] }) { - + - + assertStatus(422) - ->assertJsonValidationErrors(['username', 'email', 'nik', 'full_name', 'phone_number', 'address', 'birth_place', 'birth_date', 'base_salary']); + ->assertJsonValidationErrors(['username', 'email', 'nik', 'full_name', 'phone_number', 'address', 'birth_place', 'birth_date', 'base_salary', 'roles']); }); it('can access user edit page', function () {