getMockBuilder(FilesystemOperator::class)->disableOriginalConstructor()->getMock(); $userStorageMock->method('delete')->willThrowException($exception); $loggerMock = $this->getMockBuilder(LoggerInterface::class) ->disableOriginalConstructor() ->getMock(); // test that the logger was called buut no error 500 should be raised $loggerMock->expects(self::once()) ->method('warning'); $userManager = new UserManager( $this->getMockBuilder(UserPasswordHasherInterface::class)->disableOriginalConstructor()->getMock(), $this->getMockBuilder(UserRepository::class)->disableOriginalConstructor()->getMock(), $this->getMockBuilder(ClockInterface::class)->disableOriginalConstructor()->getMock(), $this->getMockBuilder(StringHelper::class)->disableOriginalConstructor()->getMock(), $userStorageMock, $this->getMockBuilder(FileUploader::class)->disableOriginalConstructor()->getMock(), $loggerMock ); $user = (new User()) ->setId(Uuid::v6()) ->setAvatar('foobar.png') ; $userManager->deleteAvatar($user); } }