forked from krzysztofrewak/hyperdrive-testing
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathecs.php
48 lines (40 loc) · 1.51 KB
/
ecs.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
declare(strict_types=1);
use KrzysztofRewak\PhpCsFixer\DoubleQuoteFixer\DoubleQuoteFixer;
use PhpCsFixer\Fixer\CastNotation\CastSpacesFixer;
use PhpCsFixer\Fixer\ClassNotation\ClassAttributesSeparationFixer;
use PhpCsFixer\Fixer\Operator\NotOperatorWithSuccessorSpaceFixer;
use PhpCsFixer\Fixer\Strict\DeclareStrictTypesFixer;
use PhpCsFixer\Fixer\StringNotation\SingleQuoteFixer;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
use Symplify\EasyCodingStandard\ValueObject\Option;
use Symplify\EasyCodingStandard\ValueObject\Set\SetList;
$sets = [
SetList::CLEAN_CODE,
SetList::PSR_12,
SetList::PHP_71,
SetList::COMMON,
];
$skipped = [
SingleQuoteFixer::class => null,
ClassAttributesSeparationFixer::class => null,
NotOperatorWithSuccessorSpaceFixer::class => null,
];
$rules = [
DeclareStrictTypesFixer::class => null,
CastSpacesFixer::class => ["space" => "none"],
DoubleQuoteFixer::class => null,
];
return static function (ContainerConfigurator $containerConfigurator) use ($sets, $skipped, $rules): void {
$parameters = $containerConfigurator->parameters();
$parameters->set(Option::SETS, $sets);
$parameters->set(Option::SKIP, $skipped);
$parameters->set(Option::PATHS, ["src"]);
$services = $containerConfigurator->services();
foreach ($rules as $rule => $configuration) {
$service = $services->set($rule);
if ($configuration) {
$service->call("configure", [$configuration]);
}
}
};