Файл: gapps/vendor/phpunit/php-code-coverage/src/CodeCoverage/Report/XML/File/Coverage.php
Строк: 59
<?php
/*
* This file is part of the PHP_CodeCoverage package.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* @since Class available since Release 2.0.0
*/
class PHP_CodeCoverage_Report_XML_File_Coverage
{
/**
* @var XMLWriter
*/
private $writer;
/**
* @var DOMElement
*/
private $contextNode;
/**
* @var bool
*/
private $finalized = false;
public function __construct(DOMElement $context, $line)
{
$this->contextNode = $context;
$this->writer = new XMLWriter();
$this->writer->openMemory();
$this->writer->startElementNs(null, $context->nodeName, 'http://schema.phpunit.de/coverage/1.0');
$this->writer->writeAttribute('nr', $line);
}
public function addTest($test)
{
if ($this->finalized) {
throw new PHP_CodeCoverage_Exception('Coverage Report already finalized');
}
$this->writer->startElement('covered');
$this->writer->writeAttribute('by', $test);
$this->writer->endElement();
}
public function finalize()
{
$this->writer->endElement();
$fragment = $this->contextNode->ownerDocument->createDocumentFragment();
$fragment->appendXML($this->writer->outputMemory());
$this->contextNode->parentNode->replaceChild(
$fragment,
$this->contextNode
);
$this->finalized = true;
}
}