class MoveAttributesFromRootToCoverage
@no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
@internal This class is not covered by the backward compatibility promise for PHPUnit
Hierarchy
- class \PHPUnit\TextUI\XmlConfiguration\MoveAttributesFromRootToCoverage implements \PHPUnit\TextUI\XmlConfiguration\Migration
Expanded class hierarchy of MoveAttributesFromRootToCoverage
File
-
vendor/
phpunit/ phpunit/ src/ TextUI/ Configuration/ Xml/ Migration/ Migrations/ MoveAttributesFromRootToCoverage.php, line 21
Namespace
PHPUnit\TextUI\XmlConfigurationView source
final class MoveAttributesFromRootToCoverage implements Migration {
/**
* @throws MigrationException
*/
public function migrate(DOMDocument $document) : void {
$map = [
'disableCodeCoverageIgnore' => 'disableCodeCoverageIgnore',
'ignoreDeprecatedCodeUnitsFromCodeCoverage' => 'ignoreDeprecatedCodeUnits',
];
$root = $document->documentElement;
assert($root instanceof DOMElement);
$coverage = $document->getElementsByTagName('coverage')
->item(0);
if (!$coverage instanceof DOMElement) {
throw new MigrationException('Unexpected state - No coverage element');
}
foreach ($map as $old => $new) {
if (!$root->hasAttribute($old)) {
continue;
}
$coverage->setAttribute($new, $root->getAttribute($old));
$root->removeAttribute($old);
}
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
MoveAttributesFromRootToCoverage::migrate | public | function | Overrides Migration::migrate |