Quellcode durchsuchen

Fix DefaultRouteGenerator cache tests with Symfony 3.1 (#3899)

Symfony\Component\Config\Resource\FileResource fail if the given path is invalid since Symfony 3.1.

It was the case from the begining because of mocking an interface.

A condition is added to the RoutesCache class.

Ref: https://github.com/phpDocumentor/ReflectionDocBlock/pull/72#issuecomment-222651257
Sullivan SENECHAL vor 9 Jahren
Ursprung
Commit
43b1359d7e
2 geänderte Dateien mit 9 neuen und 3 gelöschten Zeilen
  1. 6 2
      Route/AdminPoolLoader.php
  2. 3 1
      Route/RoutesCache.php

+ 6 - 2
Route/AdminPoolLoader.php

@@ -75,11 +75,15 @@ class AdminPoolLoader extends Loader
             }
 
             $reflection = new \ReflectionObject($admin);
-            $collection->addResource(new FileResource($reflection->getFileName()));
+            if (file_exists($reflection->getFileName())) {
+                $collection->addResource(new FileResource($reflection->getFileName()));
+            }
         }
 
         $reflection = new \ReflectionObject($this->container);
-        $collection->addResource(new FileResource($reflection->getFileName()));
+        if (file_exists($reflection->getFileName())) {
+            $collection->addResource(new FileResource($reflection->getFileName()));
+        }
 
         return $collection;
     }

+ 3 - 1
Route/RoutesCache.php

@@ -59,7 +59,9 @@ class RoutesCache
             $routes = array();
 
             $reflection = new \ReflectionObject($admin);
-            $resources[] = new FileResource($reflection->getFileName());
+            if (file_exists($reflection->getFileName())) {
+                $resources[] = new FileResource($reflection->getFileName());
+            }
 
             if (!$admin->getRoutes()) {
                 throw new \RuntimeException('Invalid data type, AdminInterface::getRoutes must return a RouteCollection');