My attempts at exercism.org
1<?php
2
3declare(strict_types=1);
4
5use PHPUnit\Framework\TestCase;
6use PHPUnit\Framework\Attributes\TestDox;
7
8final class LineUpTest extends TestCase
9{
10 public static function setUpBeforeClass(): void
11 {
12 require_once('LineUp.php');
13 }
14
15 /** uuid: 7760d1b8-4864-4db4-953b-0fa7c047dbc0 */
16 #[TestDox('Format smallest non-exceptional ordinal numeral 4')]
17 public function testFormatSmallestNonExceptionalOrdinalNumeral4(): void
18 {
19 $this->assertSame(
20 'Gianna, you are the 4th customer we serve today. Thank you!',
21 format('Gianna', 4)
22 );
23 }
24
25 /** uuid: e8b7c715-6baa-4f7b-8fb3-2fa48044ab7a */
26 #[TestDox('Format greatest single digit non-exceptional ordinal numeral 9')]
27 public function testFormatGreatestSingleDigitNonExceptionalOrdinalNumeral9(): void
28 {
29 $this->assertSame(
30 'Maarten, you are the 9th customer we serve today. Thank you!',
31 format('Maarten', 9)
32 );
33 }
34
35 /** uuid: f370aae9-7ae7-4247-90ce-e8ff8c6934df */
36 #[TestDox('Format non-exceptional ordinal numeral 5')]
37 public function testFormatNonExceptionalOrdinalNumeral5(): void
38 {
39 $this->assertSame(
40 'Petronila, you are the 5th customer we serve today. Thank you!',
41 format('Petronila', 5)
42 );
43 }
44
45 /** uuid: 37f10dea-42a2-49de-bb92-0b690b677908 */
46 #[TestDox('Format non-exceptional ordinal numeral 6')]
47 public function testFormatNonExceptionalOrdinalNumeral6(): void
48 {
49 $this->assertSame(
50 'Attakullakulla, you are the 6th customer we serve today. Thank you!',
51 format('Attakullakulla', 6)
52 );
53 }
54
55 /** uuid: d8dfb9a2-3a1f-4fee-9dae-01af3600054e */
56 #[TestDox('Format non-exceptional ordinal numeral 7')]
57 public function testFormatNonExceptionalOrdinalNumeral7(): void
58 {
59 $this->assertSame(
60 'Kate, you are the 7th customer we serve today. Thank you!',
61 format('Kate', 7)
62 );
63 }
64
65 /** uuid: 505ec372-1803-42b1-9377-6934890fd055 */
66 #[TestDox('Format non-exceptional ordinal numeral 8')]
67 public function testFormatNonExceptionalOrdinalNumeral8(): void
68 {
69 $this->assertSame(
70 'Maximiliano, you are the 8th customer we serve today. Thank you!',
71 format('Maximiliano', 8)
72 );
73 }
74
75 /** uuid: 8267072d-be1f-4f70-b34a-76b7557a47b9 */
76 #[TestDox('Format exceptional ordinal numeral 1')]
77 public function testFormatExceptionalOrdinalNumeral1(): void
78 {
79 $this->assertSame(
80 'Mary, you are the 1st customer we serve today. Thank you!',
81 format('Mary', 1)
82 );
83 }
84
85 /** uuid: 4d8753cb-0364-4b29-84b8-4374a4fa2e3f */
86 #[TestDox('Format exceptional ordinal numeral 2')]
87 public function testFormatExceptionalOrdinalNumeral2(): void
88 {
89 $this->assertSame(
90 'Haruto, you are the 2nd customer we serve today. Thank you!',
91 format('Haruto', 2)
92 );
93 }
94
95 /** uuid: 8d44c223-3a7e-4f48-a0ca-78e67bf98aa7 */
96 #[TestDox('Format exceptional ordinal numeral 3')]
97 public function testFormatExceptionalOrdinalNumeral3(): void
98 {
99 $this->assertSame(
100 'Henriette, you are the 3rd customer we serve today. Thank you!',
101 format('Henriette', 3)
102 );
103 }
104
105 /** uuid: 6c4f6c88-b306-4f40-bc78-97cdd583c21a */
106 #[TestDox('Format smallest two digit non-exceptional ordinal numeral 10')]
107 public function testFormatSmallestTwoDigitNonExceptionalOrdinalNumeral10(): void
108 {
109 $this->assertSame(
110 'Alvarez, you are the 10th customer we serve today. Thank you!',
111 format('Alvarez', 10)
112 );
113 }
114
115 /** uuid: e257a43f-d2b1-457a-97df-25f0923fc62a */
116 #[TestDox('Format non-exceptional ordinal numeral 11')]
117 public function testFormatNonExceptionalOrdinalNumeral11(): void
118 {
119 $this->assertSame(
120 'Jacqueline, you are the 11th customer we serve today. Thank you!',
121 format('Jacqueline', 11)
122 );
123 }
124
125 /** uuid: bb1db695-4d64-457f-81b8-4f5a2107e3f4 */
126 #[TestDox('Format non-exceptional ordinal numeral 12')]
127 public function testFormatNonExceptionalOrdinalNumeral12(): void
128 {
129 $this->assertSame(
130 'Juan, you are the 12th customer we serve today. Thank you!',
131 format('Juan', 12)
132 );
133 }
134
135 /** uuid: 60a3187c-9403-4835-97de-4f10ebfd63e2 */
136 #[TestDox('Format non-exceptional ordinal numeral 13')]
137 public function testFormatNonExceptionalOrdinalNumeral13(): void
138 {
139 $this->assertSame(
140 'Patricia, you are the 13th customer we serve today. Thank you!',
141 format('Patricia', 13)
142 );
143 }
144
145 /** uuid: 2bdcebc5-c029-4874-b6cc-e9bec80d603a */
146 #[TestDox('Format exceptional ordinal numeral 21')]
147 public function testFormatExceptionalOrdinalNumeral21(): void
148 {
149 $this->assertSame(
150 'Washi, you are the 21st customer we serve today. Thank you!',
151 format('Washi', 21)
152 );
153 }
154
155 /** uuid: 74ee2317-0295-49d2-baf0-d56bcefa14e3 */
156 #[TestDox('Format exceptional ordinal numeral 62')]
157 public function testFormatExceptionalOrdinalNumeral62(): void
158 {
159 $this->assertSame(
160 'Nayra, you are the 62nd customer we serve today. Thank you!',
161 format('Nayra', 62)
162 );
163 }
164
165 /** uuid: b37c332d-7f68-40e3-8503-e43cbd67a0c4 */
166 #[TestDox('Format exceptional ordinal numeral 100')]
167 public function testFormatExceptionalOrdinalNumeral100(): void
168 {
169 $this->assertSame(
170 'John, you are the 100th customer we serve today. Thank you!',
171 format('John', 100)
172 );
173 }
174
175 /** uuid: 0375f250-ce92-4195-9555-00e28ccc4d99 */
176 #[TestDox('Format exceptional ordinal numeral 101')]
177 public function testFormatExceptionalOrdinalNumeral101(): void
178 {
179 $this->assertSame(
180 'Zeinab, you are the 101st customer we serve today. Thank you!',
181 format('Zeinab', 101)
182 );
183 }
184
185 /** uuid: 0d8a4974-9a8a-45a4-aca7-a9fb473c9836 */
186 #[TestDox('Format non-exceptional ordinal numeral 112')]
187 public function testFormatNonExceptionalOrdinalNumeral112(): void
188 {
189 $this->assertSame(
190 'Knud, you are the 112th customer we serve today. Thank you!',
191 format('Knud', 112)
192 );
193 }
194
195 /** uuid: 06b62efe-199e-4ce7-970d-4bf73945713f */
196 #[TestDox('Format exceptional ordinal numeral 123')]
197 public function testFormatExceptionalOrdinalNumeral123(): void
198 {
199 $this->assertSame(
200 'Yma, you are the 123rd customer we serve today. Thank you!',
201 format('Yma', 123)
202 );
203 }
204}