@@ -31,6 +31,10 @@ protected function setUp(): void
3131 ExistingTrait::class => false ,
3232 'NonExistingTrait ' => true ,
3333 ]);
34+
35+ ClassExistsMock::withMockedEnums ([
36+ 'NonExistingEnum ' => true ,
37+ ]);
3438 }
3539
3640 public function testClassExists ()
@@ -53,6 +57,26 @@ public function testClassExists()
5357 $ this ->assertFalse (class_exists ('\\NonExistingClassReal ' , false ));
5458 }
5559
60+ public function testEnumExistsOnClasses ()
61+ {
62+ $ this ->assertFalse (enum_exists (ExistingClass::class));
63+ $ this ->assertFalse (enum_exists (ExistingClass::class, false ));
64+ $ this ->assertFalse (enum_exists ('\\' .ExistingClass::class));
65+ $ this ->assertFalse (enum_exists ('\\' .ExistingClass::class, false ));
66+ $ this ->assertFalse (enum_exists ('NonExistingClass ' ));
67+ $ this ->assertFalse (enum_exists ('NonExistingClass ' , false ));
68+ $ this ->assertFalse (enum_exists ('\\NonExistingClass ' ));
69+ $ this ->assertFalse (enum_exists ('\\NonExistingClass ' , false ));
70+ $ this ->assertFalse (enum_exists (ExistingClassReal::class));
71+ $ this ->assertFalse (enum_exists (ExistingClassReal::class, false ));
72+ $ this ->assertFalse (enum_exists ('\\' .ExistingClassReal::class));
73+ $ this ->assertFalse (enum_exists ('\\' .ExistingClassReal::class, false ));
74+ $ this ->assertFalse (enum_exists ('NonExistingClassReal ' ));
75+ $ this ->assertFalse (enum_exists ('NonExistingClassReal ' , false ));
76+ $ this ->assertFalse (enum_exists ('\\NonExistingClassReal ' ));
77+ $ this ->assertFalse (enum_exists ('\\NonExistingClassReal ' , false ));
78+ }
79+
5680 public function testInterfaceExists ()
5781 {
5882 $ this ->assertFalse (interface_exists (ExistingInterface::class));
@@ -92,6 +116,28 @@ public function testTraitExists()
92116 $ this ->assertFalse (trait_exists ('\\NonExistingTraitReal ' ));
93117 $ this ->assertFalse (trait_exists ('\\NonExistingTraitReal ' , false ));
94118 }
119+
120+ public function testEnumExists ()
121+ {
122+ $ this ->assertTrue (enum_exists ('NonExistingEnum ' ));
123+ $ this ->assertTrue (enum_exists ('NonExistingEnum ' , false ));
124+ $ this ->assertTrue (enum_exists ('\\NonExistingEnum ' ));
125+ $ this ->assertTrue (enum_exists ('\\NonExistingEnum ' , false ));
126+ $ this ->assertFalse (enum_exists ('NonExistingClassReal ' ));
127+ $ this ->assertFalse (enum_exists ('NonExistingClassReal ' , false ));
128+ $ this ->assertFalse (enum_exists ('\\NonExistingEnumReal ' ));
129+ $ this ->assertFalse (enum_exists ('\\NonExistingEnumReal ' , false ));
130+ }
131+
132+ public function testClassExistsOnEnums ()
133+ {
134+ $ this ->assertTrue (class_exists ('NonExistingEnum ' ));
135+ $ this ->assertTrue (class_exists ('NonExistingEnum ' , false ));
136+ $ this ->assertTrue (class_exists ('\\NonExistingEnum ' ));
137+ $ this ->assertTrue (class_exists ('\\NonExistingEnum ' , false ));
138+ $ this ->assertFalse (class_exists ('\\NonExistingEnumReal ' ));
139+ $ this ->assertFalse (class_exists ('\\NonExistingEnumReal ' , false ));
140+ }
95141}
96142
97143class ExistingClass
0 commit comments