Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. MoveCoverageDirectoriesToSource.php

function MoveCoverageDirectoriesToSource::migrate

Throws

MigrationException

Overrides Migration::migrate

File

vendor/phpunit/phpunit/src/TextUI/Configuration/Xml/Migration/Migrations/MoveCoverageDirectoriesToSource.php, line 27

Class

MoveCoverageDirectoriesToSource
@no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit

Namespace

PHPUnit\TextUI\XmlConfiguration

Code

public function migrate(DOMDocument $document) : void {
    $source = $document->getElementsByTagName('source')
        ->item(0);
    if ($source !== null) {
        return;
    }
    $coverage = $document->getElementsByTagName('coverage')
        ->item(0);
    if ($coverage === null) {
        return;
    }
    $root = $document->documentElement;
    assert($root instanceof DOMElement);
    $source = $document->createElement('source');
    $root->appendChild($source);
    $xpath = new DOMXPath($document);
    foreach ([
        'include',
        'exclude',
    ] as $element) {
        foreach (SnapshotNodeList::fromNodeList($xpath->query('//coverage/' . $element)) as $node) {
            $source->appendChild($node);
        }
    }
    if ($coverage->childElementCount !== 0) {
        return;
    }
    assert($coverage->parentNode !== null);
    $coverage->parentNode
        ->removeChild($coverage);
}
RSS feed
Powered by Drupal