From 30b8cc2c74d890afcd7847f9207f11b28fc1a916 Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Fri, 24 Apr 2026 13:16:57 +0300 Subject: [PATCH] test create user rejects duplicate email --- tests/Unit/User/UseCases/CreateUserTest.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/Unit/User/UseCases/CreateUserTest.php b/tests/Unit/User/UseCases/CreateUserTest.php index bf2c793..1a97716 100644 --- a/tests/Unit/User/UseCases/CreateUserTest.php +++ b/tests/Unit/User/UseCases/CreateUserTest.php @@ -58,4 +58,20 @@ class CreateUserTest extends TestCase $user = $userRepo->find(0); $this->assertTrue($user->isAdmin()); } + + public function test_throws_when_email_already_taken(): void + { + $userRepo = new FakeUserRepository(); + $useCase = new CreateUser($userRepo); + $useCase->execute(new CreateUserRequest( + email: 'test@test.com', + )); + + $this->expectException(BadRequestException::class); + $this->expectExceptionMessage('email already taken'); + + $useCase->execute(new CreateUserRequest( + email: 'test@test.com', + )); + } }