Skip to content

Commit c03edef

Browse files
committed
simplify tests for asserting private property
1 parent 04139a0 commit c03edef

File tree

1 file changed

+18
-14
lines changed

1 file changed

+18
-14
lines changed

tests/TokenizerTest.php

+18-14
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,23 @@
1717

1818
final class TokenizerTest extends TestCase
1919
{
20-
public function testKeywordsReservedAreUpperCasedAndWithoutWhitespace(): void
20+
/**
21+
* @param 'reserved'|'reservedToplevel'|'reservedNewline' $propertyName
22+
*
23+
* @return list<string>
24+
*/
25+
private function getTokenizerList(string $propertyName): array
2126
{
2227
$tokenizerReflClass = new ReflectionClass(Tokenizer::class);
23-
/** @var list<string> $tokenizerReserved */
24-
$tokenizerReserved = $tokenizerReflClass->getProperty('reserved')->getDefaultValue();
28+
/** @var list<string> $res */
29+
$res = $tokenizerReflClass->getProperty($propertyName)->getDefaultValue();
30+
31+
return $res;
32+
}
33+
34+
public function testKeywordsReservedAreUpperCasedAndWithoutWhitespace(): void
35+
{
36+
$tokenizerReserved = $this->getTokenizerList('reserved');
2537

2638
$kwsDiff = array_filter($tokenizerReserved, static function ($v) {
2739
return $v !== strtoupper($v) || preg_match('~\s~', $v) !== 0;
@@ -32,25 +44,17 @@ public function testKeywordsReservedAreUpperCasedAndWithoutWhitespace(): void
3244

3345
public function testKeywordsReservedToplevelAndNewlineAreReserved(): void
3446
{
35-
$tokenizerReflClass = new ReflectionClass(Tokenizer::class);
36-
/** @var list<string> $tokenizerReserved */
37-
$tokenizerReserved = $tokenizerReflClass->getProperty('reserved')->getDefaultValue();
38-
/** @var list<string> $tokenizerReservedToplevel */
39-
$tokenizerReservedToplevel = $tokenizerReflClass->getProperty('reservedToplevel')->getDefaultValue();
40-
/** @var list<string> $tokenizerReservedNewline */
41-
$tokenizerReservedNewline = $tokenizerReflClass->getProperty('reservedNewline')->getDefaultValue();
47+
$tokenizerReserved = $this->getTokenizerList('reserved');
4248

4349
$kws = [];
4450

45-
foreach ([...$tokenizerReservedToplevel, ...$tokenizerReservedNewline] as $v) {
51+
foreach ([...$this->getTokenizerList('reservedToplevel'), ...$this->getTokenizerList('reservedNewline')] as $v) {
4652
foreach (explode(' ', $v) as $kw) {
4753
$kws[] = $kw;
4854
}
4955
}
5056

51-
$kwsDiff = array_diff($kws, $tokenizerReserved);
52-
53-
self::assertSame([], $kwsDiff);
57+
self::assertSame([], array_diff($kws, $tokenizerReserved));
5458
}
5559

5660
#[DoesNotPerformAssertions]

0 commit comments

Comments
 (0)