@@ -28,21 +28,7 @@ final class CodeUnitFindingVisitorTest extends TestCase
2828 */
2929 public function testDoesNotFindAnonymousClass (): void
3030 {
31- $ nodes = (new ParserFactory )->create (ParserFactory::PREFER_PHP7 )->parse (
32- file_get_contents (__DIR__ . '/../../_files/ClassThatUsesAnonymousClass.php ' )
33- );
34-
35- assert ($ nodes !== null );
36-
37- $ traverser = new NodeTraverser ;
38- $ codeUnitFindingVisitor = new CodeUnitFindingVisitor ;
39-
40- $ traverser ->addVisitor (new NameResolver );
41- $ traverser ->addVisitor (new ParentConnectingVisitor );
42- $ traverser ->addVisitor ($ codeUnitFindingVisitor );
43-
44- /* @noinspection UnusedFunctionResultInspection */
45- $ traverser ->traverse ($ nodes );
31+ $ codeUnitFindingVisitor = $ this ->findCodeUnits (__DIR__ . '/../../_files/ClassThatUsesAnonymousClass.php ' );
4632
4733 $ this ->assertEmpty ($ codeUnitFindingVisitor ->functions ());
4834 $ this ->assertEmpty ($ codeUnitFindingVisitor ->traits ());
@@ -77,9 +63,28 @@ public function testDoesNotFindAnonymousClass(): void
7763 * @ticket https://github.com/sebastianbergmann/php-code-coverage/pull/797
7864 */
7965 public function testHandlesClassWithNameThatIsPartOfItsNamespacesName (): void
66+ {
67+ $ codeUnitFindingVisitor = $ this ->findCodeUnits (__DIR__ . '/../../_files/ClassWithNameThatIsPartOfItsNamespacesName.php ' );
68+
69+ $ this ->assertEmpty ($ codeUnitFindingVisitor ->functions ());
70+ $ this ->assertEmpty ($ codeUnitFindingVisitor ->traits ());
71+
72+ $ classes = $ codeUnitFindingVisitor ->classes ();
73+
74+ $ this ->assertCount (1 , $ classes );
75+ $ this ->assertArrayHasKey (ClassWithNameThatIsPartOfItsNamespacesName::class, $ classes );
76+
77+ $ class = $ classes [ClassWithNameThatIsPartOfItsNamespacesName::class];
78+
79+ $ this ->assertSame ('ClassWithNameThatIsPartOfItsNamespacesName ' , $ class ['name ' ]);
80+ $ this ->assertSame (ClassWithNameThatIsPartOfItsNamespacesName::class, $ class ['namespacedName ' ]);
81+ $ this ->assertSame ('SebastianBergmann\CodeCoverage\TestFixture\ClassWithNameThatIsPartOfItsNamespacesName ' , $ class ['namespace ' ]);
82+ }
83+
84+ private function findCodeUnits (string $ filename ): CodeUnitFindingVisitor
8085 {
8186 $ nodes = (new ParserFactory )->create (ParserFactory::PREFER_PHP7 )->parse (
82- file_get_contents (__DIR__ . ' /../../_files/ClassWithNameThatIsPartOfItsNamespacesName.php ' )
87+ file_get_contents ($ filename )
8388 );
8489
8590 assert ($ nodes !== null );
@@ -94,18 +99,6 @@ public function testHandlesClassWithNameThatIsPartOfItsNamespacesName(): void
9499 /* @noinspection UnusedFunctionResultInspection */
95100 $ traverser ->traverse ($ nodes );
96101
97- $ this ->assertEmpty ($ codeUnitFindingVisitor ->functions ());
98- $ this ->assertEmpty ($ codeUnitFindingVisitor ->traits ());
99-
100- $ classes = $ codeUnitFindingVisitor ->classes ();
101-
102- $ this ->assertCount (1 , $ classes );
103- $ this ->assertArrayHasKey (ClassWithNameThatIsPartOfItsNamespacesName::class, $ classes );
104-
105- $ class = $ classes [ClassWithNameThatIsPartOfItsNamespacesName::class];
106-
107- $ this ->assertSame ('ClassWithNameThatIsPartOfItsNamespacesName ' , $ class ['name ' ]);
108- $ this ->assertSame (ClassWithNameThatIsPartOfItsNamespacesName::class, $ class ['namespacedName ' ]);
109- $ this ->assertSame ('SebastianBergmann\CodeCoverage\TestFixture\ClassWithNameThatIsPartOfItsNamespacesName ' , $ class ['namespace ' ]);
102+ return $ codeUnitFindingVisitor ;
110103 }
111104}
0 commit comments