325 lines
18 KiB
HTML
325 lines
18 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>Dashboard for /var/www/html/backend/app/Services/Parsers</title>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link href="../../_css/bootstrap.min.css?v=11.0.10" rel="stylesheet" type="text/css">
|
|
<link href="../../_css/nv.d3.min.css?v=11.0.10" rel="stylesheet" type="text/css">
|
|
<link href="../../_css/style.css?v=11.0.10" rel="stylesheet" type="text/css">
|
|
<link href="../../_css/custom.css" rel="stylesheet" type="text/css">
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<nav aria-label="breadcrumb">
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item"><a href="../../index.html">/var/www/html/backend/app</a></li>
|
|
<li class="breadcrumb-item"><a href="../index.html">Services</a></li>
|
|
<li class="breadcrumb-item"><a href="index.html">Parsers</a></li>
|
|
<li class="breadcrumb-item active">(Dashboard)</li>
|
|
|
|
</ol>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<h2>Classes</h2>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<h3>Coverage Distribution</h3>
|
|
<div id="classCoverageDistribution" style="height: 300px;">
|
|
<svg></svg>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<h3>Complexity</h3>
|
|
<div id="classComplexity" style="height: 300px;">
|
|
<svg></svg>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<h3>Insufficient Coverage</h3>
|
|
<div class="scrollbox">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Class</th>
|
|
<th class="text-right">Coverage</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#5">App\Services\Parsers\BelgaArticlePageParser</a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParser.php.html#5">App\Services\Parsers\BelgaHomepageParser</a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#5">App\Services\Parsers\VrtArticlePageParser</a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtHomepageParser.php.html#5">App\Services\Parsers\VrtHomepageParser</a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParserAdapter.php.html#7">App\Services\Parsers\BelgaHomepageParserAdapter</a></td><td class="text-right">25%</td></tr>
|
|
<tr><td><a href="VrtHomepageParserAdapter.php.html#7">App\Services\Parsers\VrtHomepageParserAdapter</a></td><td class="text-right">25%</td></tr>
|
|
<tr><td><a href="BelgaArticleParser.php.html#7">App\Services\Parsers\BelgaArticleParser</a></td><td class="text-right">33%</td></tr>
|
|
<tr><td><a href="VrtArticleParser.php.html#7">App\Services\Parsers\VrtArticleParser</a></td><td class="text-right">33%</td></tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<h3>Project Risks</h3>
|
|
<div class="scrollbox">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Class</th>
|
|
<th class="text-right"><abbr title="Change Risk Anti-Patterns (CRAP) Index">CRAP</abbr></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#5">App\Services\Parsers\BelgaArticlePageParser</a></td><td class="text-right">306</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#5">App\Services\Parsers\VrtArticlePageParser</a></td><td class="text-right">210</td></tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<h2>Methods</h2>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<h3>Coverage Distribution</h3>
|
|
<div id="methodCoverageDistribution" style="height: 300px;">
|
|
<svg></svg>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<h3>Complexity</h3>
|
|
<div id="methodComplexity" style="height: 300px;">
|
|
<svg></svg>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<h3>Insufficient Coverage</h3>
|
|
<div class="scrollbox">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Method</th>
|
|
<th class="text-right">Coverage</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#7"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractTitle">extractTitle</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#32"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractDescription">extractDescription</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#52"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractFullArticle">extractFullArticle</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#83"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractThumbnail">extractThumbnail</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#101"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractData">extractData</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticleParser.php.html#14"><abbr title="App\Services\Parsers\BelgaArticleParser::extractData">extractData</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaArticleParser.php.html#19"><abbr title="App\Services\Parsers\BelgaArticleParser::getSourceName">getSourceName</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParser.php.html#10"><abbr title="App\Services\Parsers\BelgaHomepageParser::extractArticleUrls">extractArticleUrls</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParserAdapter.php.html#14"><abbr title="App\Services\Parsers\BelgaHomepageParserAdapter::extractArticleUrls">extractArticleUrls</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParserAdapter.php.html#19"><abbr title="App\Services\Parsers\BelgaHomepageParserAdapter::getHomepageUrl">getHomepageUrl</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="BelgaHomepageParserAdapter.php.html#24"><abbr title="App\Services\Parsers\BelgaHomepageParserAdapter::getSourceName">getSourceName</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#7"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractTitle">extractTitle</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#27"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractDescription">extractDescription</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#42"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractFullArticle">extractFullArticle</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#67"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractThumbnail">extractThumbnail</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#83"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractData">extractData</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticleParser.php.html#14"><abbr title="App\Services\Parsers\VrtArticleParser::extractData">extractData</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtArticleParser.php.html#19"><abbr title="App\Services\Parsers\VrtArticleParser::getSourceName">getSourceName</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtHomepageParser.php.html#10"><abbr title="App\Services\Parsers\VrtHomepageParser::extractArticleUrls">extractArticleUrls</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtHomepageParserAdapter.php.html#14"><abbr title="App\Services\Parsers\VrtHomepageParserAdapter::extractArticleUrls">extractArticleUrls</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtHomepageParserAdapter.php.html#19"><abbr title="App\Services\Parsers\VrtHomepageParserAdapter::getHomepageUrl">getHomepageUrl</abbr></a></td><td class="text-right">0%</td></tr>
|
|
<tr><td><a href="VrtHomepageParserAdapter.php.html#24"><abbr title="App\Services\Parsers\VrtHomepageParserAdapter::getSourceName">getSourceName</abbr></a></td><td class="text-right">0%</td></tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<h3>Project Risks</h3>
|
|
<div class="scrollbox">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Method</th>
|
|
<th class="text-right"><abbr title="Change Risk Anti-Patterns (CRAP) Index">CRAP</abbr></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#7"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractTitle">extractTitle</abbr></a></td><td class="text-right">30</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#32"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractDescription">extractDescription</abbr></a></td><td class="text-right">20</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#52"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractFullArticle">extractFullArticle</abbr></a></td><td class="text-right">20</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#7"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractTitle">extractTitle</abbr></a></td><td class="text-right">20</td></tr>
|
|
<tr><td><a href="BelgaArticlePageParser.php.html#83"><abbr title="App\Services\Parsers\BelgaArticlePageParser::extractThumbnail">extractThumbnail</abbr></a></td><td class="text-right">12</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#27"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractDescription">extractDescription</abbr></a></td><td class="text-right">12</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#42"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractFullArticle">extractFullArticle</abbr></a></td><td class="text-right">12</td></tr>
|
|
<tr><td><a href="VrtArticlePageParser.php.html#67"><abbr title="App\Services\Parsers\VrtArticlePageParser::extractThumbnail">extractThumbnail</abbr></a></td><td class="text-right">12</td></tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<footer>
|
|
<hr/>
|
|
<p>
|
|
<small>Generated by <a href="https://github.com/sebastianbergmann/php-code-coverage" target="_top">php-code-coverage 11.0.10</a> using <a href="https://www.php.net/" target="_top">PHP 8.4.10</a> and <a href="https://phpunit.de/">PHPUnit 11.5.28</a> at Sun Aug 3 19:15:34 UTC 2025.</small>
|
|
</p>
|
|
</footer>
|
|
</div>
|
|
<script src="../../_js/jquery.min.js?v=11.0.10" type="text/javascript"></script>
|
|
<script src="../../_js/d3.min.js?v=11.0.10" type="text/javascript"></script>
|
|
<script src="../../_js/nv.d3.min.js?v=11.0.10" type="text/javascript"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() {
|
|
nv.addGraph(function() {
|
|
var chart = nv.models.multiBarChart();
|
|
chart.tooltips(false)
|
|
.showControls(false)
|
|
.showLegend(false)
|
|
.reduceXTicks(false)
|
|
.staggerLabels(true)
|
|
.yAxis.tickFormat(d3.format('d'));
|
|
|
|
d3.select('#classCoverageDistribution svg')
|
|
.datum(getCoverageDistributionData([4,0,0,2,2,0,0,0,0,0,0,0], "Class Coverage"))
|
|
.transition().duration(500).call(chart);
|
|
|
|
nv.utils.windowResize(chart.update);
|
|
|
|
return chart;
|
|
});
|
|
|
|
nv.addGraph(function() {
|
|
var chart = nv.models.multiBarChart();
|
|
chart.tooltips(false)
|
|
.showControls(false)
|
|
.showLegend(false)
|
|
.reduceXTicks(false)
|
|
.staggerLabels(true)
|
|
.yAxis.tickFormat(d3.format('d'));
|
|
|
|
d3.select('#methodCoverageDistribution svg')
|
|
.datum(getCoverageDistributionData([22,0,0,0,0,0,0,0,0,0,0,4], "Method Coverage"))
|
|
.transition().duration(500).call(chart);
|
|
|
|
nv.utils.windowResize(chart.update);
|
|
|
|
return chart;
|
|
});
|
|
|
|
function getCoverageDistributionData(data, label) {
|
|
var labels = [
|
|
'0%',
|
|
'0-10%',
|
|
'10-20%',
|
|
'20-30%',
|
|
'30-40%',
|
|
'40-50%',
|
|
'50-60%',
|
|
'60-70%',
|
|
'70-80%',
|
|
'80-90%',
|
|
'90-100%',
|
|
'100%'
|
|
];
|
|
var values = [];
|
|
$.each(labels, function(key) {
|
|
values.push({x: labels[key], y: data[key]});
|
|
});
|
|
|
|
return [
|
|
{
|
|
key: label,
|
|
values: values,
|
|
color: "#4572A7"
|
|
}
|
|
];
|
|
}
|
|
nv.addGraph(function() {
|
|
var chart = nv.models.scatterChart()
|
|
.showDistX(true)
|
|
.showDistY(true)
|
|
.showLegend(false)
|
|
.forceX([0, 100]);
|
|
chart.tooltipContent(function(graph) {
|
|
return '<p>' + graph.point.class + '</p>';
|
|
});
|
|
|
|
chart.xAxis.axisLabel('Code Coverage (in percent)');
|
|
chart.yAxis.axisLabel('Cyclomatic Complexity');
|
|
|
|
d3.select('#classComplexity svg')
|
|
.datum(getComplexityData([[0,17,"<a href=\"BelgaArticlePageParser.php.html#5\">App\\Services\\Parsers\\BelgaArticlePageParser<\/a>"],[33.33333333333333,3,"<a href=\"BelgaArticleParser.php.html#7\">App\\Services\\Parsers\\BelgaArticleParser<\/a>"],[0,1,"<a href=\"BelgaHomepageParser.php.html#5\">App\\Services\\Parsers\\BelgaHomepageParser<\/a>"],[25,4,"<a href=\"BelgaHomepageParserAdapter.php.html#7\">App\\Services\\Parsers\\BelgaHomepageParserAdapter<\/a>"],[0,14,"<a href=\"VrtArticlePageParser.php.html#5\">App\\Services\\Parsers\\VrtArticlePageParser<\/a>"],[33.33333333333333,3,"<a href=\"VrtArticleParser.php.html#7\">App\\Services\\Parsers\\VrtArticleParser<\/a>"],[0,1,"<a href=\"VrtHomepageParser.php.html#5\">App\\Services\\Parsers\\VrtHomepageParser<\/a>"],[25,4,"<a href=\"VrtHomepageParserAdapter.php.html#7\">App\\Services\\Parsers\\VrtHomepageParserAdapter<\/a>"]], 'Class Complexity'))
|
|
.transition()
|
|
.duration(500)
|
|
.call(chart);
|
|
|
|
nv.utils.windowResize(chart.update);
|
|
|
|
return chart;
|
|
});
|
|
|
|
nv.addGraph(function() {
|
|
var chart = nv.models.scatterChart()
|
|
.showDistX(true)
|
|
.showDistY(true)
|
|
.showLegend(false)
|
|
.forceX([0, 100]);
|
|
chart.tooltipContent(function(graph) {
|
|
return '<p>' + graph.point.class + '</p>';
|
|
});
|
|
|
|
chart.xAxis.axisLabel('Code Coverage (in percent)');
|
|
chart.yAxis.axisLabel('Method Complexity');
|
|
|
|
d3.select('#methodComplexity svg')
|
|
.datum(getComplexityData([[0,5,"<a href=\"BelgaArticlePageParser.php.html#7\">App\\Services\\Parsers\\BelgaArticlePageParser::extractTitle<\/a>"],[0,4,"<a href=\"BelgaArticlePageParser.php.html#32\">App\\Services\\Parsers\\BelgaArticlePageParser::extractDescription<\/a>"],[0,4,"<a href=\"BelgaArticlePageParser.php.html#52\">App\\Services\\Parsers\\BelgaArticlePageParser::extractFullArticle<\/a>"],[0,3,"<a href=\"BelgaArticlePageParser.php.html#83\">App\\Services\\Parsers\\BelgaArticlePageParser::extractThumbnail<\/a>"],[0,1,"<a href=\"BelgaArticlePageParser.php.html#101\">App\\Services\\Parsers\\BelgaArticlePageParser::extractData<\/a>"],[100,1,"<a href=\"BelgaArticleParser.php.html#9\">App\\Services\\Parsers\\BelgaArticleParser::canParse<\/a>"],[0,1,"<a href=\"BelgaArticleParser.php.html#14\">App\\Services\\Parsers\\BelgaArticleParser::extractData<\/a>"],[0,1,"<a href=\"BelgaArticleParser.php.html#19\">App\\Services\\Parsers\\BelgaArticleParser::getSourceName<\/a>"],[0,1,"<a href=\"BelgaHomepageParser.php.html#10\">App\\Services\\Parsers\\BelgaHomepageParser::extractArticleUrls<\/a>"],[100,1,"<a href=\"BelgaHomepageParserAdapter.php.html#9\">App\\Services\\Parsers\\BelgaHomepageParserAdapter::canParse<\/a>"],[0,1,"<a href=\"BelgaHomepageParserAdapter.php.html#14\">App\\Services\\Parsers\\BelgaHomepageParserAdapter::extractArticleUrls<\/a>"],[0,1,"<a href=\"BelgaHomepageParserAdapter.php.html#19\">App\\Services\\Parsers\\BelgaHomepageParserAdapter::getHomepageUrl<\/a>"],[0,1,"<a href=\"BelgaHomepageParserAdapter.php.html#24\">App\\Services\\Parsers\\BelgaHomepageParserAdapter::getSourceName<\/a>"],[0,4,"<a href=\"VrtArticlePageParser.php.html#7\">App\\Services\\Parsers\\VrtArticlePageParser::extractTitle<\/a>"],[0,3,"<a href=\"VrtArticlePageParser.php.html#27\">App\\Services\\Parsers\\VrtArticlePageParser::extractDescription<\/a>"],[0,3,"<a href=\"VrtArticlePageParser.php.html#42\">App\\Services\\Parsers\\VrtArticlePageParser::extractFullArticle<\/a>"],[0,3,"<a href=\"VrtArticlePageParser.php.html#67\">App\\Services\\Parsers\\VrtArticlePageParser::extractThumbnail<\/a>"],[0,1,"<a href=\"VrtArticlePageParser.php.html#83\">App\\Services\\Parsers\\VrtArticlePageParser::extractData<\/a>"],[100,1,"<a href=\"VrtArticleParser.php.html#9\">App\\Services\\Parsers\\VrtArticleParser::canParse<\/a>"],[0,1,"<a href=\"VrtArticleParser.php.html#14\">App\\Services\\Parsers\\VrtArticleParser::extractData<\/a>"],[0,1,"<a href=\"VrtArticleParser.php.html#19\">App\\Services\\Parsers\\VrtArticleParser::getSourceName<\/a>"],[0,1,"<a href=\"VrtHomepageParser.php.html#10\">App\\Services\\Parsers\\VrtHomepageParser::extractArticleUrls<\/a>"],[100,1,"<a href=\"VrtHomepageParserAdapter.php.html#9\">App\\Services\\Parsers\\VrtHomepageParserAdapter::canParse<\/a>"],[0,1,"<a href=\"VrtHomepageParserAdapter.php.html#14\">App\\Services\\Parsers\\VrtHomepageParserAdapter::extractArticleUrls<\/a>"],[0,1,"<a href=\"VrtHomepageParserAdapter.php.html#19\">App\\Services\\Parsers\\VrtHomepageParserAdapter::getHomepageUrl<\/a>"],[0,1,"<a href=\"VrtHomepageParserAdapter.php.html#24\">App\\Services\\Parsers\\VrtHomepageParserAdapter::getSourceName<\/a>"]], 'Method Complexity'))
|
|
.transition()
|
|
.duration(500)
|
|
.call(chart);
|
|
|
|
nv.utils.windowResize(chart.update);
|
|
|
|
return chart;
|
|
});
|
|
|
|
function getComplexityData(data, label) {
|
|
var values = [];
|
|
$.each(data, function(key) {
|
|
var value = Math.round(data[key][0]*100) / 100;
|
|
values.push({
|
|
x: value,
|
|
y: data[key][1],
|
|
class: data[key][2],
|
|
size: 0.05,
|
|
shape: 'diamond'
|
|
});
|
|
});
|
|
|
|
return [
|
|
{
|
|
key: label,
|
|
values: values,
|
|
color: "#4572A7"
|
|
}
|
|
];
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|