Code Coverage
 
Lines
Branches
Paths
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
CRAP
100.00% covered (success)
100.00%
1 / 1
MaintainWordProperties
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
10 / 10
10
100.00% covered (success)
100.00%
1 / 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
 getWordId
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
 getLabel
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
 getGender
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
 getLang
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
 getOffenseLevel
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
 getStatus
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
 isAsSubject
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
 isAsQualifier
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
 getQualifierPosition
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
1<?php
2
3namespace App\Dto\Properties;
4
5use App\Enum\Lang;
6use App\Enum\OffenseLevel;
7use App\Enum\QualifierPosition;
8use App\Enum\WordGender;
9use App\Enum\WordStatus;
10
11/**
12 * DTO used to pass properties to a service to maintain a Word.
13 *
14 * @author Wilhelm Zwertvaegher
15 */
16readonly class MaintainWordProperties
17{
18    public function __construct(
19        private string $label,
20        private WordGender $gender,
21        private Lang $lang,
22        private OffenseLevel $offenseLevel,
23        private WordStatus $status,
24        private bool $asSubject = false,
25        private bool $asQualifier = false,
26        private ?QualifierPosition $qualifierPosition = null,
27        private ?int $wordId = null,
28    ) {
29    }
30
31    public function getWordId(): ?int
32    {
33        return $this->wordId;
34    }
35
36    public function getLabel(): string
37    {
38        return $this->label;
39    }
40
41    public function getGender(): WordGender
42    {
43        return $this->gender;
44    }
45
46    public function getLang(): Lang
47    {
48        return $this->lang;
49    }
50
51    public function getOffenseLevel(): OffenseLevel
52    {
53        return $this->offenseLevel;
54    }
55
56    public function getStatus(): WordStatus
57    {
58        return $this->status;
59    }
60
61    public function isAsSubject(): bool
62    {
63        return $this->asSubject;
64    }
65
66    public function isAsQualifier(): bool
67    {
68        return $this->asQualifier;
69    }
70
71    public function getQualifierPosition(): ?QualifierPosition
72    {
73        return $this->qualifierPosition;
74    }
75}