Security update for Core, with self-updated composer
[yaffs-website] / vendor / symfony / var-dumper / Test / VarDumperTestTrait.php
index e5f6bf5b98e7e23ce69d0f86d47e7c46e9edb02e..0fffd55122218106e9471ce86ec1a20e458dcd32 100644 (file)
@@ -19,27 +19,42 @@ use Symfony\Component\VarDumper\Dumper\CliDumper;
  */
 trait VarDumperTestTrait
 {
-    public function assertDumpEquals($dump, $data, $message = '')
+    public function assertDumpEquals($dump, $data, $filter = 0, $message = '')
     {
-        $this->assertSame(rtrim($dump), $this->getDump($data), $message);
+        if (is_string($filter)) {
+            @trigger_error(sprintf('The $message argument of the "%s()" method at 3rd position is deprecated since Symfony 3.4 and will be moved at 4th position in 4.0.', __METHOD__), E_USER_DEPRECATED);
+            $message = $filter;
+            $filter = 0;
+        }
+
+        $this->assertSame(rtrim($dump), $this->getDump($data, null, $filter), $message);
     }
 
-    public function assertDumpMatchesFormat($dump, $data, $message = '')
+    public function assertDumpMatchesFormat($dump, $data, $filter = 0, $message = '')
     {
-        $this->assertStringMatchesFormat(rtrim($dump), $this->getDump($data), $message);
+        if (is_string($filter)) {
+            @trigger_error(sprintf('The $message argument of the "%s()" method at 3rd position is deprecated since Symfony 3.4 and will be moved at 4th position in 4.0.', __METHOD__), E_USER_DEPRECATED);
+            $message = $filter;
+            $filter = 0;
+        }
+
+        $this->assertStringMatchesFormat(rtrim($dump), $this->getDump($data, null, $filter), $message);
     }
 
-    protected function getDump($data)
+    protected function getDump($data, $key = null, $filter = 0)
     {
-        $h = fopen('php://memory', 'r+b');
+        $flags = getenv('DUMP_LIGHT_ARRAY') ? CliDumper::DUMP_LIGHT_ARRAY : 0;
+        $flags |= getenv('DUMP_STRING_LENGTH') ? CliDumper::DUMP_STRING_LENGTH : 0;
+
         $cloner = new VarCloner();
         $cloner->setMaxItems(-1);
-        $dumper = new CliDumper($h);
+        $dumper = new CliDumper(null, null, $flags);
         $dumper->setColors(false);
-        $dumper->dump($cloner->cloneVar($data)->withRefHandles(false));
-        $data = stream_get_contents($h, -1, 0);
-        fclose($h);
+        $data = $cloner->cloneVar($data, $filter)->withRefHandles(false);
+        if (null !== $key && null === $data = $data->seek($key)) {
+            return;
+        }
 
-        return rtrim($data);
+        return rtrim($dumper->dump($data, true));
     }
 }