Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / behat / behat / src / Behat / Behat / Context / Snippet / Appender / ContextSnippetAppender.php
diff --git a/vendor/behat/behat/src/Behat/Behat/Context/Snippet/Appender/ContextSnippetAppender.php b/vendor/behat/behat/src/Behat/Behat/Context/Snippet/Appender/ContextSnippetAppender.php
deleted file mode 100644 (file)
index 5a881f9..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php
-
-/*
- * This file is part of the Behat.
- * (c) Konstantin Kudryashov <ever.zet@gmail.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Behat\Behat\Context\Snippet\Appender;
-
-use Behat\Behat\Snippet\AggregateSnippet;
-use Behat\Behat\Snippet\Appender\SnippetAppender;
-use Behat\Testwork\Filesystem\FilesystemLogger;
-use ReflectionClass;
-
-/**
- * Appends context-related snippets to their context classes.
- *
- * @author Konstantin Kudryashov <ever.zet@gmail.com>
- */
-final class ContextSnippetAppender implements SnippetAppender
-{
-    /**
-     * @const PendingException class
-     */
-    const PENDING_EXCEPTION_CLASS = 'Behat\Behat\Tester\Exception\PendingException';
-
-    /**
-     * @var FilesystemLogger
-     */
-    private $logger;
-
-    /**
-     * Initializes appender.
-     *
-     * @param null|FilesystemLogger $logger
-     */
-    public function __construct(FilesystemLogger $logger = null)
-    {
-        $this->logger = $logger;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function supportsSnippet(AggregateSnippet $snippet)
-    {
-        return 'context' === $snippet->getType();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function appendSnippet(AggregateSnippet $snippet)
-    {
-        foreach ($snippet->getTargets() as $contextClass) {
-            $reflection = new ReflectionClass($contextClass);
-            $content = file_get_contents($reflection->getFileName());
-
-            foreach ($snippet->getUsedClasses() as $class) {
-                if (!$this->isClassImported($class, $content)) {
-                    $content = $this->importClass($class, $content);
-                }
-            }
-
-            $generated = rtrim(strtr($snippet->getSnippet(), array('\\' => '\\\\', '$' => '\\$')));
-            $content = preg_replace('/}\s*$/', "\n" . $generated . "\n}\n", $content);
-            $path = $reflection->getFileName();
-
-            file_put_contents($path, $content);
-
-            $this->logSnippetAddition($snippet, $path);
-        }
-    }
-
-    /**
-     * Checks if context file already has class in it.
-     *
-     * @param string $class
-     * @param string $contextFileContent
-     *
-     * @return Boolean
-     */
-    private function isClassImported($class, $contextFileContent)
-    {
-        $classImportRegex = sprintf(
-            '@use[^;]*%s.*;@ms',
-            preg_quote($class, '@')
-        );
-
-        return 1 === preg_match($classImportRegex, $contextFileContent);
-    }
-
-    /**
-     * Adds use-block for class.
-     *
-     * @param string $class
-     * @param string $contextFileContent
-     *
-     * @return string
-     */
-    private function importClass($class, $contextFileContent)
-    {
-        $replaceWith = "\$1" . 'use ' . $class . ";\n\$2;";
-
-        return preg_replace('@^(.*)(use\s+[^;]*);@m', $replaceWith, $contextFileContent, 1);
-    }
-
-    /**
-     * Logs snippet addition to the provided path (if logger is given).
-     *
-     * @param AggregateSnippet $snippet
-     * @param string           $path
-     */
-    private function logSnippetAddition(AggregateSnippet $snippet, $path)
-    {
-        if (!$this->logger) {
-            return;
-        }
-
-        $steps = $snippet->getSteps();
-        $reason = sprintf("`<comment>%s</comment>` definition added", $steps[0]->getText());
-
-        $this->logger->fileUpdated($path, $reason);
-    }
-}