21
21
*/
22
22
final readonly class TestSuiteFilterProcessor
23
23
{
24
- private Factory $ filterFactory ;
25
-
26
- public function __construct (Factory $ factory = new Factory )
27
- {
28
- $ this ->filterFactory = $ factory ;
29
- }
30
-
31
24
/**
32
25
* @throws Event\RuntimeException
33
26
* @throws FilterNotConfiguredException
34
27
*/
35
28
public function process (Configuration $ configuration , TestSuite $ suite ): void
36
29
{
30
+ $ factory = new Factory ;
31
+
37
32
if (!$ configuration ->hasFilter () &&
38
33
!$ configuration ->hasGroups () &&
39
34
!$ configuration ->hasExcludeGroups () &&
@@ -44,19 +39,19 @@ public function process(Configuration $configuration, TestSuite $suite): void
44
39
}
45
40
46
41
if ($ configuration ->hasExcludeGroups ()) {
47
- $ this -> filterFactory ->addExcludeGroupFilter (
42
+ $ factory ->addExcludeGroupFilter (
48
43
$ configuration ->excludeGroups (),
49
44
);
50
45
}
51
46
52
47
if ($ configuration ->hasGroups ()) {
53
- $ this -> filterFactory ->addIncludeGroupFilter (
48
+ $ factory ->addIncludeGroupFilter (
54
49
$ configuration ->groups (),
55
50
);
56
51
}
57
52
58
53
if ($ configuration ->hasTestsCovering ()) {
59
- $ this -> filterFactory ->addIncludeGroupFilter (
54
+ $ factory ->addIncludeGroupFilter (
60
55
array_map (
61
56
static fn (string $ name ): string => '__phpunit_covers_ ' . $ name ,
62
57
$ configuration ->testsCovering (),
@@ -65,7 +60,7 @@ public function process(Configuration $configuration, TestSuite $suite): void
65
60
}
66
61
67
62
if ($ configuration ->hasTestsUsing ()) {
68
- $ this -> filterFactory ->addIncludeGroupFilter (
63
+ $ factory ->addIncludeGroupFilter (
69
64
array_map (
70
65
static fn (string $ name ): string => '__phpunit_uses_ ' . $ name ,
71
66
$ configuration ->testsUsing (),
@@ -74,18 +69,18 @@ public function process(Configuration $configuration, TestSuite $suite): void
74
69
}
75
70
76
71
if ($ configuration ->hasExcludeFilter ()) {
77
- $ this -> filterFactory ->addExcludeNameFilter (
72
+ $ factory ->addExcludeNameFilter (
78
73
$ configuration ->excludeFilter (),
79
74
);
80
75
}
81
76
82
77
if ($ configuration ->hasFilter ()) {
83
- $ this -> filterFactory ->addIncludeNameFilter (
78
+ $ factory ->addIncludeNameFilter (
84
79
$ configuration ->filter (),
85
80
);
86
81
}
87
82
88
- $ suite ->injectFilter ($ this -> filterFactory );
83
+ $ suite ->injectFilter ($ factory );
89
84
90
85
Event \Facade::emitter ()->testSuiteFiltered (
91
86
Event \TestSuite \TestSuiteBuilder::from ($ suite ),
0 commit comments