Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 23
0.00% covered (danger)
0.00%
0 / 22
CRAP
0.00% covered (danger)
0.00%
0 / 1
RunRecord
0.00% covered (danger)
0.00%
0 / 23
0.00% covered (danger)
0.00%
0 / 22
552
0.00% covered (danger)
0.00%
0 / 1
 getId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
6
 setId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getUser
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setUser
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getRunnerName
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRunnerName
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getRunAt
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRunAt
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getIsCounting
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIsCounting
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getDistanceMeters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setDistanceMeters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getElevationMeters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setElevationMeters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getSportType
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setSportType
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getSource
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setSource
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getInfo
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setInfo
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 __toString
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 testOnlyGetField
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Olz\Entity\Anniversary;
4
5use Doctrine\ORM\Mapping as ORM;
6use Olz\Entity\Common\OlzEntity;
7use Olz\Entity\Common\TestableInterface;
8use Olz\Entity\Users\User;
9use Olz\Repository\Anniversary\RunRecordRepository;
10
11#[ORM\Table(name: 'anniversary_runs')]
12#[ORM\Index(name: 'run_at_index', columns: ['run_at'])]
13#[ORM\Index(name: 'source_index', columns: ['source'])]
14#[ORM\Entity(repositoryClass: RunRecordRepository::class)]
15class RunRecord extends OlzEntity implements TestableInterface {
16    #[ORM\Id]
17    #[ORM\Column(type: 'bigint', nullable: false)]
18    #[ORM\GeneratedValue]
19    private int|string $id;
20
21    #[ORM\ManyToOne(targetEntity: User::class)]
22    #[ORM\JoinColumn(name: 'user_id', referencedColumnName: 'id', nullable: true)]
23    private ?User $user;
24
25    #[ORM\Column(type: 'string', nullable: false, options: ['default' => ''])]
26    private string $runner_name;
27
28    #[ORM\Column(type: 'datetime', nullable: false)]
29    private \DateTime $run_at;
30
31    #[ORM\Column(type: 'boolean', nullable: false, options: ['default' => true])]
32    private bool $is_counting;
33
34    #[ORM\Column(type: 'integer', nullable: false)]
35    private int $distance_meters;
36
37    #[ORM\Column(type: 'integer', nullable: false)]
38    private int $elevation_meters;
39
40    #[ORM\Column(type: 'string', nullable: true)]
41    private ?string $sport_type;
42
43    #[ORM\Column(type: 'string', nullable: true)]
44    private ?string $source;
45
46    #[ORM\Column(type: 'text', nullable: true)]
47    private ?string $info;
48
49    public function getId(): ?int {
50        return isset($this->id) ? intval($this->id) : null;
51    }
52
53    public function setId(int $new_id): void {
54        $this->id = $new_id;
55    }
56
57    public function getUser(): ?User {
58        return $this->user;
59    }
60
61    public function setUser(?User $new_user): void {
62        $this->user = $new_user;
63    }
64
65    public function getRunnerName(): string {
66        return $this->runner_name;
67    }
68
69    public function setRunnerName(string $new_value): void {
70        $this->runner_name = $new_value;
71    }
72
73    public function getRunAt(): \DateTime {
74        return $this->run_at;
75    }
76
77    public function setRunAt(\DateTime $new_value): void {
78        $this->run_at = $new_value;
79    }
80
81    public function getIsCounting(): bool {
82        return $this->is_counting;
83    }
84
85    public function setIsCounting(bool $new_value): void {
86        $this->is_counting = $new_value;
87    }
88
89    public function getDistanceMeters(): int {
90        return $this->distance_meters;
91    }
92
93    public function setDistanceMeters(int $new_value): void {
94        $this->distance_meters = $new_value;
95    }
96
97    public function getElevationMeters(): int {
98        return $this->elevation_meters;
99    }
100
101    public function setElevationMeters(int $new_value): void {
102        $this->elevation_meters = $new_value;
103    }
104
105    public function getSportType(): ?string {
106        return $this->sport_type;
107    }
108
109    public function setSportType(?string $new_value): void {
110        $this->sport_type = $new_value;
111    }
112
113    public function getSource(): ?string {
114        return $this->source;
115    }
116
117    public function setSource(?string $new_value): void {
118        $this->source = $new_value;
119    }
120
121    public function getInfo(): ?string {
122        return $this->info;
123    }
124
125    public function setInfo(?string $new_value): void {
126        $this->info = $new_value;
127    }
128
129    // ---
130
131    public function __toString(): string {
132        $id = $this->getId();
133        return "RunRecord (ID: {$id})";
134    }
135
136    public function testOnlyGetField(string $field_name): mixed {
137        return $this->{$field_name};
138    }
139}