8000 Merge branch '4.4' into 5.0 · symfony/symfony@4350185 · GitHub
[go: up one dir, main page]

Skip to content

Commit 4350185

Browse files
Merge branch '4.4' into 5.0
* 4.4: [PhpUnitBridge] fix getting the vendor/ dir for tests
2 parents b0cb757 + e2dbff5 commit 4350185

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

src/Symfony/Bridge/PhpUnit/Tests/DeprecationErrorHandler/DeprecationTest.php

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,32 @@
1919

2020
class DeprecationTest extends TestCase
2121
{
22-
public static function setUpBeforeClass(): void
22+
private static $vendorDir;
23+
24+
private static function getVendorDir(): string
2325
{
24-
$vendorDir = self::getVendorDir();
26+
if (null !== self::$vendorDir) {
27+
return self::$vendorDir;
28+
}
29+
30+
foreach (get_declared_classes() as $class) {
31+
if ('C' === $class[0] && 0 === strpos($class, 'ComposerAutoloaderInit')) {
32+
$r = new \ReflectionClass($class);
33+
$vendorDir = \dirname(\dirname($r->getFileName()));
34+
if (file_exists($vendorDir.'/composer/installed.json') && @mkdir($vendorDir.'/myfakevendor/myfakepackage1', 0777, true)) {
35+
break;
36+
}
37+
}
38+
}
2539

26-
mkdir($vendorDir.'/myfakevendor/myfakepackage1', 0777, true);
40+
self::$vendorDir = $vendorDir;
2741
mkdir($vendorDir.'/myfakevendor/myfakepackage2');
2842
touch($vendorDir.'/myfakevendor/myfakepackage1/MyFakeFile1.php');
2943
touch($vendorDir.'/myfakevendor/myfakepackage1/MyFakeFile2.php');
3044
touch($vendorDir.'/myfakevendor/myfakepackage2/MyFakeFile.php');
31-
}
3245

33-
private static function getVendorDir(): string
34-
{
35-
$reflection = new \ReflectionClass(ClassLoader::class);
3646

37-
return \dirname($reflection->getFileName(), 2);
47+
return self::$vendorDir;
3848
}
3949

4050
public function testItCanDetermineTheClassWhereTheDeprecationHappened()
@@ -184,7 +194,7 @@ public function testGetTypeDetectsSelf(string $expectedType, string $message, st
184194
['class' => $traceClass, 'function' => 'myMethod'],
185195
];
186196
$deprecation = new Deprecation($message, $trace, $file);
187-
$this->assertEquals($expectedType, $deprecation->getType());
197+
$this->assertSame($expectedType, $deprecation->getType());
188198
}
189199

190200
public function providerGetTypeUsesRightTrace(): array
@@ -240,7 +250,7 @@ public function testGetTypeUsesRightTrace(string $expectedType, string $message,
240250
$trace,
241251
self::getVendorDir().'/myfakevendor/myfakepackage2/MyFakeFile.php'
242252
);
243-
$this->assertEquals($expectedType, $deprecation->getType());
253+
$this->assertSame($expectedType, $deprecation->getType());
244254
}
245255

246256
/**

0 commit comments

Comments
 (0)
0