|
8 | 8 |
|
9 | 9 | namespace Tests; |
10 | 10 |
|
| 11 | +use Iterator; |
11 | 12 | use JsonException; |
12 | 13 | use PHPUnit\Framework\Attributes\DataProvider; |
13 | 14 | use PHPUnit\Framework\TestCase; |
@@ -94,17 +95,17 @@ public function testImport(): void { |
94 | 95 | Http::stopRedirect(); |
95 | 96 |
|
96 | 97 | Helpers::import( |
97 | | - static fn ($key) => false, |
98 | | - static function (string $key, string $value, int $ttl) use (&$stored) { |
| 98 | + static fn ($key): false => false, |
| 99 | + static function (string $key, string $value, int $ttl) use (&$stored): void { |
99 | 100 | $stored[] = ['key' => $key, 'value' => $value, 'ttl' => $ttl]; |
100 | 101 | } |
101 | 102 | ); |
102 | 103 |
|
103 | 104 | unlink($_FILES['import']['tmp_name']); |
104 | 105 |
|
105 | | - $this->assertEquals('testkey1', $stored[0]['key']); |
106 | | - $this->assertEquals('value1', $stored[0]['value']); |
107 | | - $this->assertEquals(3600, $stored[0]['ttl']); |
| 106 | + $this->assertSame('testkey1', $stored[0]['key']); |
| 107 | + $this->assertSame('value1', $stored[0]['value']); |
| 108 | + $this->assertSame(3600, $stored[0]['ttl']); |
108 | 109 | } |
109 | 110 |
|
110 | 111 | /** |
@@ -138,41 +139,36 @@ public function testSortKeys(string $sortdir, string $sortcol, array $keys, arra |
138 | 139 | $this->assertSame($expected, Helpers::sortKeys($this->template, $keys)); |
139 | 140 | } |
140 | 141 |
|
141 | | - /** |
142 | | - * @return array<string, array<string, mixed>> |
143 | | - */ |
144 | | - public static function sortKeysProvider(): array { |
145 | | - return [ |
146 | | - 'no sorting' => [ |
147 | | - 'sortdir' => 'none', |
148 | | - 'sortcol' => 'column1', |
149 | | - 'keys' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
150 | | - 'expected' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
151 | | - ], |
152 | | - 'ascending sort' => [ |
153 | | - 'sortdir' => 'asc', |
154 | | - 'sortcol' => 'column1', |
155 | | - 'keys' => [['items' => ['column1' => 'value3']], ['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']],], |
156 | | - 'expected' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
157 | | - ], |
158 | | - 'descending sort' => [ |
159 | | - 'sortdir' => 'desc', |
160 | | - 'sortcol' => 'column1', |
161 | | - 'keys' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
162 | | - 'expected' => [['items' => ['column1' => 'value3']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value1']],], |
163 | | - ], |
164 | | - 'ascending sort with integers' => [ |
165 | | - 'sortdir' => 'asc', |
166 | | - 'sortcol' => 'column1', |
167 | | - 'keys' => [['items' => ['column1' => 3]], ['items' => ['column1' => 1]], ['items' => ['column1' => 2]],], |
168 | | - 'expected' => [['items' => ['column1' => 1]], ['items' => ['column1' => 2]], ['items' => ['column1' => 3]],], |
169 | | - ], |
170 | | - 'descending sort with integers' => [ |
171 | | - 'sortdir' => 'desc', |
172 | | - 'sortcol' => 'column1', |
173 | | - 'keys' => [['items' => ['column1' => 1]], ['items' => ['column1' => 2]], ['items' => ['column1' => 3]],], |
174 | | - 'expected' => [['items' => ['column1' => 3]], ['items' => ['column1' => 2]], ['items' => ['column1' => 1]],], |
175 | | - ], |
| 142 | + public static function sortKeysProvider(): Iterator { |
| 143 | + yield 'no sorting' => [ |
| 144 | + 'sortdir' => 'none', |
| 145 | + 'sortcol' => 'column1', |
| 146 | + 'keys' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
| 147 | + 'expected' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
| 148 | + ]; |
| 149 | + yield 'ascending sort' => [ |
| 150 | + 'sortdir' => 'asc', |
| 151 | + 'sortcol' => 'column1', |
| 152 | + 'keys' => [['items' => ['column1' => 'value3']], ['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']],], |
| 153 | + 'expected' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
| 154 | + ]; |
| 155 | + yield 'descending sort' => [ |
| 156 | + 'sortdir' => 'desc', |
| 157 | + 'sortcol' => 'column1', |
| 158 | + 'keys' => [['items' => ['column1' => 'value1']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value3']],], |
| 159 | + 'expected' => [['items' => ['column1' => 'value3']], ['items' => ['column1' => 'value2']], ['items' => ['column1' => 'value1']],], |
| 160 | + ]; |
| 161 | + yield 'ascending sort with integers' => [ |
| 162 | + 'sortdir' => 'asc', |
| 163 | + 'sortcol' => 'column1', |
| 164 | + 'keys' => [['items' => ['column1' => 3]], ['items' => ['column1' => 1]], ['items' => ['column1' => 2]],], |
| 165 | + 'expected' => [['items' => ['column1' => 1]], ['items' => ['column1' => 2]], ['items' => ['column1' => 3]],], |
| 166 | + ]; |
| 167 | + yield 'descending sort with integers' => [ |
| 168 | + 'sortdir' => 'desc', |
| 169 | + 'sortcol' => 'column1', |
| 170 | + 'keys' => [['items' => ['column1' => 1]], ['items' => ['column1' => 2]], ['items' => ['column1' => 3]],], |
| 171 | + 'expected' => [['items' => ['column1' => 3]], ['items' => ['column1' => 2]], ['items' => ['column1' => 1]],], |
176 | 172 | ]; |
177 | 173 | } |
178 | 174 | } |
0 commit comments