UserModelTest.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?php
  2. namespace Test\PhpDevCommunity\RequestKit\Model;
  3. use PhpDevCommunity\RequestKit\Utils\DateOnly;
  4. class UserModelTest
  5. {
  6. private string $name = '';
  7. private ?int $age = null; // Nullable as it's not required
  8. private ?string $email = null; // Nullable as it's not required
  9. private ?DateOnly $dateOfBirth = null; // Nullable as it's not required
  10. private ?\DateTimeInterface $createdAt = null;
  11. private ?AddressTest $address = null;
  12. /**
  13. * @var array<AddressTest>
  14. */
  15. private array $addresses = [];
  16. private bool $active = false;
  17. public function __construct()
  18. {
  19. $this->createdAt = new \DateTime();
  20. }
  21. public function getName(): string
  22. {
  23. return $this->name;
  24. }
  25. public function setName(string $name): UserModelTest
  26. {
  27. $this->name = $name;
  28. return $this;
  29. }
  30. public function getAge(): ?int
  31. {
  32. return $this->age;
  33. }
  34. public function setAge(?int $age): UserModelTest
  35. {
  36. $this->age = $age;
  37. return $this;
  38. }
  39. public function getEmail(): ?string
  40. {
  41. return $this->email;
  42. }
  43. public function setEmail(?string $email): UserModelTest
  44. {
  45. $this->email = $email;
  46. return $this;
  47. }
  48. public function getDateOfBirth(): ?\DateTimeInterface
  49. {
  50. return $this->dateOfBirth;
  51. }
  52. public function setDateOfBirth(?\DateTimeInterface $dateOfBirth): UserModelTest
  53. {
  54. $this->dateOfBirth = $dateOfBirth;
  55. return $this;
  56. }
  57. public function getCreatedAt(): ?\DateTimeInterface
  58. {
  59. return $this->createdAt;
  60. }
  61. public function setCreatedAt(?\DateTimeInterface $createdAt): UserModelTest
  62. {
  63. $this->createdAt = $createdAt;
  64. return $this;
  65. }
  66. public function getAddress(): ?AddressTest
  67. {
  68. return $this->address;
  69. }
  70. public function setAddress(?AddressTest $address): UserModelTest
  71. {
  72. $this->address = $address;
  73. return $this;
  74. }
  75. public function getAddresses(): array
  76. {
  77. return $this->addresses;
  78. }
  79. public function setAddresses(array $addresses): UserModelTest
  80. {
  81. $this->addresses = $addresses;
  82. return $this;
  83. }
  84. public function isActive(): bool
  85. {
  86. return $this->active;
  87. }
  88. public function setActive(bool $active): UserModelTest
  89. {
  90. $this->active = $active;
  91. return $this;
  92. }
  93. }