Skip to content

Commit

Permalink
Enhancement: Simplify
Browse files Browse the repository at this point in the history
  • Loading branch information
localheinz committed Sep 17, 2023
1 parent 64e7c9c commit c494350
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 49 deletions.
59 changes: 16 additions & 43 deletions test/Unit/RuleSet/AbstractRuleSetTestCase.php
Expand Up @@ -36,7 +36,9 @@ final public function testDefaults(): void

final public function testRuleSetDoesNotConfigureRulesThatAreNotRegistered(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$fixersThatAreRegistered = self::fixersThatAreRegistered();

Expand All @@ -57,13 +59,15 @@ static function (string $nameOfRule) use ($fixersThatAreRegistered): bool {

self::assertEquals($rulesWithoutRulesThatAreNotRegistered, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" does not configure rules that are not registered.',
static::className(),
$ruleSet::class,
));
}

final public function testRuleSetDoesNotConfigureRulesThatAreDeprecated(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$fixersThatAreRegistered = self::fixersThatAreRegistered();

Expand All @@ -83,13 +87,15 @@ static function (string $nameOfRule) use ($fixersThatAreRegistered): bool {

self::assertEquals($rulesWithoutRulesThatAreDeprecated, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" does not configure rules that are deprecated.',
static::className(),
$ruleSet::class,
));
}

final public function testRuleSetDoesNotConfigureRulesUsingDeprecatedConfigurationOptions(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$namesOfRules = \array_keys($rules->toArray());

Expand Down Expand Up @@ -135,19 +141,21 @@ final public function testRuleSetDoesNotConfigureRulesUsingDeprecatedConfigurati

self::assertEquals($rulesWithoutDeprecatedConfigurationOptions, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" does not configure rules using deprecated configuration options.',
static::className(),
$ruleSet::class,
));
}

final public function testRulesAndConfigurationOptionsAreSortedInRuleSet(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$sorted = self::sort($rules->toArray());

self::assertSame($sorted, $rules->toArray(), \sprintf(
'Failed asserting that rules and configuration options are sorted by name in rule set "%s".',
static::className(),
$ruleSet::class,
));
}

Expand Down Expand Up @@ -216,41 +224,6 @@ abstract protected function expectedRules(): Rules;

abstract protected function expectedTargetPhpVersion(): PhpVersion;

/**
* @psalm-return class-string
*
* @throws \RuntimeException
*/
final protected static function className(): string
{
$className = \preg_replace(
'/Test$/',
'',
\str_replace(
'\Test\Unit',
'',
static::class,
),
);

if (!\is_string($className)) {
throw new \RuntimeException(\sprintf(
'Failed resolving class name from test class name "%s".',
static::class,
));
}

if (!\class_exists($className)) {
throw new \RuntimeException(\sprintf(
'Class name "%s" resolved from test class name "%s" does not reference a class that exists.',
$className,
static::class,
));
}

return $className;
}

/**
* @throws \RuntimeException
*/
Expand Down
18 changes: 12 additions & 6 deletions test/Unit/RuleSet/ExplicitRuleSetTestCase.php
Expand Up @@ -28,7 +28,9 @@ final public function testIsExplicitRuleSet(): void

final public function testRuleSetDoesNotConfigureRuleSets(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$rulesWithoutRulesForRuleSets = \array_filter(
$rules->toArray(),
Expand All @@ -40,13 +42,15 @@ static function (string $nameOfRule): bool {

self::assertEquals($rulesWithoutRulesForRuleSets, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" does not configure rules for rule sets.',
static::className(),
$ruleSet::class,
));
}

final public function testRuleSetConfiguresAllRulesThatAreNotDeprecated(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$fixersThatAreRegisteredAndNotDeprecated = \array_filter(self::fixersThatAreRegistered(), static function (Fixer\FixerInterface $fixer): bool {
return !$fixer instanceof Fixer\DeprecatedFixerInterface;
Expand All @@ -68,13 +72,15 @@ final public function testRuleSetConfiguresAllRulesThatAreNotDeprecated(): void

self::assertEquals($rulesWithRulesThatAreNotDeprecated, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" configures all non-deprecated fixers.',
static::className(),
$ruleSet::class,
));
}

final public function testRuleSetConfiguresAllRulesThatAreConfigurableAndNotDeprecatedWithAnExplicitConfigurationWithEveryOptionWhenTheyAreEnabled(): void
{
$rules = static::createRuleSet()->rules();
$ruleSet = static::createRuleSet();

$rules = $ruleSet->rules();

$namesOfRules = \array_keys($rules->toArray());

Expand Down Expand Up @@ -138,7 +144,7 @@ final public function testRuleSetConfiguresAllRulesThatAreConfigurableAndNotDepr

self::assertEquals($rulesWithAllNonDeprecatedConfigurationOptions, $rules->toArray(), \sprintf(
'Failed asserting that rule set "%s" configures configurable rules using all non-deprecated configuration options.',
static::className(),
$ruleSet::class,
));
}
}

0 comments on commit c494350

Please sign in to comment.