function Writer::write
@psalm-param non-empty-string $baselineFile
File
-
vendor/
phpunit/ phpunit/ src/ Runner/ Baseline/ Writer.php, line 27
Class
- Writer
- @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
Namespace
PHPUnit\Runner\BaselineCode
public function write(string $baselineFile, Baseline $baseline) : void {
$pathCalculator = new RelativePathCalculator(dirname($baselineFile));
$writer = new XMLWriter();
$writer->openMemory();
$writer->setIndent(true);
$writer->startDocument();
$writer->startElement('files');
$writer->writeAttribute('version', (string) Baseline::VERSION);
foreach ($baseline->groupedByFileAndLine() as $file => $lines) {
assert(!empty($file));
$writer->startElement('file');
$writer->writeAttribute('path', $pathCalculator->calculate($file));
foreach ($lines as $line => $issues) {
$writer->startElement('line');
$writer->writeAttribute('number', (string) $line);
$writer->writeAttribute('hash', $issues[0]->hash());
foreach ($issues as $issue) {
$writer->startElement('issue');
$writer->writeCData($issue->description());
$writer->endElement();
}
$writer->endElement();
}
$writer->endElement();
}
$writer->endElement();
file_put_contents($baselineFile, $writer->outputMemory());
}