fix(auth): scope email uniqueness to active users
This commit is contained in:
@@ -121,6 +121,11 @@ class StaffControllerTest extends TestCase
|
||||
|
||||
$this->deleteJson("/api/v1/adminapp/tenant/staff/{$staffId}")->assertNoContent();
|
||||
$this->assertSoftDeleted('users', ['id' => $staffId]);
|
||||
$this->assertDatabaseHas('users', [
|
||||
'id' => $staffId,
|
||||
'email' => 'ada@example.test',
|
||||
'active_email' => null,
|
||||
]);
|
||||
$this->assertDatabaseMissing('personal_access_tokens', ['id' => $accessTokenId]);
|
||||
$this->assertDatabaseHas('category_scanners', [
|
||||
'user_id' => $staffId,
|
||||
@@ -133,6 +138,24 @@ class StaffControllerTest extends TestCase
|
||||
->assertOk()
|
||||
->assertJsonCount(0, 'data');
|
||||
|
||||
$replacementResponse = $this->postJson('/api/v1/adminapp/tenant/staff', [
|
||||
'nombre_apellido' => 'Nueva Ada',
|
||||
'dni' => '11223344',
|
||||
'email' => 'ADA@example.test',
|
||||
'category_ids' => [$firstCategory->id],
|
||||
])->assertSuccessful()
|
||||
->assertJsonPath('data.email', 'ada@example.test');
|
||||
|
||||
$replacementStaffId = $replacementResponse->json('data.id');
|
||||
$this->assertNotSame($staffId, $replacementStaffId);
|
||||
$this->assertSame('Ada Byron', $ticket->fresh()->scannerUser?->nombre_apellido);
|
||||
$this->assertDatabaseHas('users', [
|
||||
'id' => $replacementStaffId,
|
||||
'email' => 'ada@example.test',
|
||||
'active_email' => 'ada@example.test',
|
||||
'deleted_at' => null,
|
||||
]);
|
||||
|
||||
}
|
||||
|
||||
public function test_admin_cannot_assign_another_tenants_category(): void
|
||||
|
||||
Reference in New Issue
Block a user