Code Coverage
 
Lines
Branches
Paths
Functions and Methods
Classes and Traits
Total
33.33% covered (danger)
33.33%
1 / 3
16.67% covered (danger)
16.67%
1 / 6
25.00% covered (danger)
25.00%
1 / 4
33.33% covered (danger)
33.33%
1 / 3
CRAP
0.00% covered (danger)
0.00%
0 / 1
RetrieveUserDtoAdapter
33.33% covered (danger)
33.33%
1 / 3
16.67% covered (danger)
16.67%
1 / 6
25.00% covered (danger)
25.00%
1 / 4
33.33% covered (danger)
33.33%
1 / 3
10.75
0.00% covered (danger)
0.00%
0 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 map
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 getUserDtoFromId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace App\User\Infrastructure\Adapter;
4
5use App\Auth\Domain\Model\Identity;
6use App\Auth\Domain\Port\Driven\IdentityRepository;
7use App\Notification\Application\Port\Driven\RetrieveIdentityDto;
8use App\Notification\Application\Port\Driven\RetrieveUserDto;
9use App\Notification\Domain\Model\IdentityInfo;
10use App\Shared\Domain\Model\EntityId;
11use App\User\Domain\Model\User;
12use App\User\Domain\Port\Driven\UserRepository;
13use MyLegoCollection\SharedContracts\Dto\IdentityDto;
14use MyLegoCollection\SharedContracts\Dto\UserDto;
15
16/**
17 * @author Wilhelm Zwertvaegher
18 */
19class RetrieveUserDtoAdapter implements RetrieveUserDto
20{
21    public function __construct(private readonly UserRepository $userRepository)
22    {
23    }
24
25    private function map(?User $user): ?UserDto
26    {
27        return null === $user ? null : new UserDto($user->getId(), $user->getIdentityId());
28    }
29
30    public function getUserDtoFromId(string $userId): ?UserDto
31    {
32        return $this->map($this->userRepository->findById(EntityId::fromString($userId)));
33    }
34}