2021-06-13 14:35:07 +01:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "UTF-8" >
2021-06-14 22:53:15 +01:00
< title > Dashboard for /Users/barnabywalters/Documents/Programming/taproot/indieauth/src< / title >
2021-06-13 14:35:07 +01:00
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2021-06-13 14:47:54 +01:00
< link href = "phpunit_css/bootstrap.min.css" rel = "stylesheet" type = "text/css" >
< link href = "phpunit_css/nv.d3.min.css" rel = "stylesheet" type = "text/css" >
< link href = "phpunit_css/style.css" rel = "stylesheet" type = "text/css" >
< link href = "phpunit_css/custom.css" rel = "stylesheet" type = "text/css" >
2021-06-13 14:35:07 +01:00
< / head >
< body >
< header >
< div class = "container-fluid" >
< div class = "row" >
< div class = "col-md-12" >
< nav aria-label = "breadcrumb" >
< ol class = "breadcrumb" >
2021-06-14 22:53:15 +01:00
< li class = "breadcrumb-item" > < a href = "index.html" > /Users/barnabywalters/Documents/Programming/taproot/indieauth/src< / a > < / li >
2021-06-13 14:35:07 +01:00
< 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 = "Middleware/NoOpMiddleware.php.html#16" > Taproot\IndieAuth\Middleware\NoOpMiddleware< / a > < / td > < td class = "text-right" > 0%< / td > < / tr >
< tr > < td > < a href = "IndieAuthException.php.html#9" > Taproot\IndieAuth\IndieAuthException< / a > < / td > < td class = "text-right" > 66%< / 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 = "IndieAuthException.php.html#9" > Taproot\IndieAuth\IndieAuthException< / a > < / td > < td class = "text-right" > 10< / 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 = "IndieAuthException.php.html#60" > < abbr title = "Taproot\IndieAuth\IndieAuthException::getExplanation" > getExplanation< / abbr > < / a > < / td > < td class = "text-right" > 0%< / td > < / tr >
< tr > < td > < a href = "IndieAuthException.php.html#75" > < abbr title = "Taproot\IndieAuth\IndieAuthException::trustQueryParams" > trustQueryParams< / abbr > < / a > < / td > < td class = "text-right" > 0%< / td > < / tr >
< tr > < td > < a href = "Middleware/NoOpMiddleware.php.html#17" > < abbr title = "Taproot\IndieAuth\Middleware\NoOpMiddleware::process" > process< / abbr > < / a > < / td > < td class = "text-right" > 0%< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#40" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::__construct" > __construct< / abbr > < / a > < / td > < td class = "text-right" > 81%< / td > < / tr >
< tr > < td > < a href = "IndieAuthException.php.html#45" > < abbr title = "Taproot\IndieAuth\IndieAuthException::create" > create< / abbr > < / a > < / td > < td class = "text-right" > 83%< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#68" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::createAuthCode" > createAuthCode< / abbr > < / a > < / td > < td class = "text-right" > 85%< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#228" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::delete" > delete< / abbr > < / a > < / td > < td class = "text-right" > 87%< / 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 = "IndieAuthException.php.html#75" > < abbr title = "Taproot\IndieAuth\IndieAuthException::trustQueryParams" > trustQueryParams< / abbr > < / a > < / td > < td class = "text-right" > 6< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#40" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::__construct" > __construct< / abbr > < / a > < / td > < td class = "text-right" > 4< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#68" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::createAuthCode" > createAuthCode< / abbr > < / a > < / td > < td class = "text-right" > 3< / td > < / tr >
< tr > < td > < a href = "Storage/FilesystemJsonStorage.php.html#228" > < abbr title = "Taproot\IndieAuth\Storage\FilesystemJsonStorage::delete" > delete< / abbr > < / a > < / td > < td class = "text-right" > 3< / td > < / tr >
< tr > < td > < a href = "IndieAuthException.php.html#45" > < abbr title = "Taproot\IndieAuth\IndieAuthException::create" > create< / abbr > < / a > < / td > < td class = "text-right" > 2< / td > < / tr >
< / tbody >
< / table >
< / div >
< / div >
< / div >
< footer >
< hr / >
< p >
2021-06-14 22:53:15 +01:00
< small > Generated by < a href = "https://github.com/sebastianbergmann/php-code-coverage" target = "_top" > php-code-coverage 9.2.6< / a > using < a href = "https://secure.php.net/" target = "_top" > PHP 7.4.19< / a > with < a href = "https://xdebug.org/" > Xdebug 3.0.4< / a > and < a href = "https://phpunit.de/" > PHPUnit 9.5.5< / a > at Mon Jun 14 21:52:39 UTC 2021.< / small >
2021-06-13 14:35:07 +01:00
< / p >
< / footer >
< / div >
2021-06-13 14:47:54 +01:00
< script src = "phpunit_js/jquery.min.js" type = "text/javascript" > < / script >
< script src = "phpunit_js/d3.min.js" type = "text/javascript" > < / script >
< script src = "phpunit_js/nv.d3.min.js" type = "text/javascript" > < / script >
2021-06-13 14:35:07 +01:00
< 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([1,0,0,0,0,0,0,1,0,0,3,5], "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([3,0,0,0,0,0,0,0,0,4,6,26], "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([[100,6,"< a href = \"Callback\/DefaultAuthorizationForm.php.html#35\" > Taproot\\IndieAuth\\Callback\\DefaultAuthorizationForm< \/a>"],[100,6,"< a href = \"Callback\/SingleUserPasswordAuthenticationCallback.php.html#45\" > Taproot\\IndieAuth\\Callback\\SingleUserPasswordAuthenticationCallback< \/a>"],[66.66666666666666,8,"< a href = \"IndieAuthException.php.html#9\" > Taproot\\IndieAuth\\IndieAuthException< \/a>"],[100,2,"< a href = \"Middleware\/ClosureRequestHandler.php.html#9\" > Taproot\\IndieAuth\\Middleware\\ClosureRequestHandler< \/a>"],[96.875,12,"< a href = \"Middleware\/DoubleSubmitCookieCsrfMiddleware.php.html#37\" > Taproot\\IndieAuth\\Middleware\\DoubleSubmitCookieCsrfMiddleware< \/a>"],[0,1,"< a href = \"Middleware\/NoOpMiddleware.php.html#16\" > Taproot\\IndieAuth\\Middleware\\NoOpMiddleware< \/a>"],[100,2,"< a href = \"Middleware\/ResponseRequestHandler.php.html#9\" > Taproot\\IndieAuth\\Middleware\\ResponseRequestHandler< \/a>"],[94.90196078431372,83,"< a href = \"Server.php.html#79\" > Taproot\\IndieAuth\\Server< \/a>"],[92.3076923076923,47,"< a href = \"Storage\/FilesystemJsonStorage.php.html#26\" > Taproot\\IndieAuth\\Storage\\FilesystemJsonStorage< \/a>"],[100,0,"< a href = \"Storage\/Sqlite3Storage.php.html#5\" > Taproot\\IndieAuth\\Storage\\Sqlite3Storage< \/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([[100,1,"< a href = \"Callback\/DefaultAuthorizationForm.php.html#49\" > Taproot\\IndieAuth\\Callback\\DefaultAuthorizationForm::__construct< \/a>"],[100,3,"< a href = \"Callback\/DefaultAuthorizationForm.php.html#55\" > Taproot\\IndieAuth\\Callback\\DefaultAuthorizationForm::showForm< \/a>"],[100,1,"< a href = \"Callback\/DefaultAuthorizationForm.php.html#88\" > Taproot\\IndieAuth\\Callback\\DefaultAuthorizationForm::transformAuthorizationCode< \/a>"],[100,1,"< a href = \"Callback\/DefaultAuthorizationForm.php.html#102\" > Taproot\\IndieAuth\\Callback\\DefaultAuthorizationForm::setLogger< \/a>"],[100,3,"< a href = \"Callback\/SingleUserPasswordAuthenticationCallback.php.html#61\" > Taproot\\IndieAuth\\Callback\\SingleUserPasswordAuthenticationCallback::__construct< \/a>"],[100,3,"< a href = \"Callback\/SingleUserPasswordAuthenticationCallback.php.html#75\" > Taproot\\IndieAuth\\Callback\\SingleUserPasswordAuthenticationCallback::__invoke< \/a>"],[83.33333333333334,2,"< a href = \"IndieAuthException.php.html#45\" > Taproot\\IndieAuth\\IndieAuthException::create< \/a>"],[100,1,"< a href = \"IndieAuthException.php.html#56\" > Taproot\\IndieAuth\\IndieAuthException::getStatusCode< \/a>"],[0,1,"< a href = \"IndieAuthException.php.html#60\" > Taproot\\IndieAuth\\IndieAuthException::getExplanation< \/a>"],[100,1,"< a href = \"IndieAuthException.php.html#64\" > Taproot\\IndieAuth\\IndieAuthException::getInfo< \/a>"],[0,2,"< a href = \"IndieAuthException.php.html#75\" > Taproot\\IndieAuth\\IndieAuthException::trustQueryParams< \/a>"],[100,1,"< a href = \"IndieAuthException.php.html#80\" > Taproot\\IndieAuth\\IndieAuthException::getRequest< \/a>"],[100,1,"< a href = \"Middleware\/ClosureRequestHandler.php.html#14\" > Taproot\\IndieAuth\\Middleware\\ClosureRequestHandler::__construct< \/a>"],[100,1,"< a href = \"Middleware\/ClosureRequestHandler.php.html#19\" > Taproot\\IndieAuth\\Middleware\\ClosureRequestHandler::handle< \/a>"],[92.85714285714286,5,"< a href = \"Middleware\/DoubleSubmitCookieCsrfMiddleware.php.html#65\" > Taproot\\IndieAuth\\Middleware\\DoubleSubmitCookieCsrfMiddleware::__construct< \/a>"],[100,1,"< a href = \"Middleware\/DoubleSubmitCookieCsrfMiddleware.php.html#87\" > Taproot\\IndieAuth\\Middleware\\DoubleSubmitCookieCsrfMiddleware::setLogger< \/a>"],[100,3,"< a href = \"Middleware\/DoubleSubmitCookieCsrfMiddleware.php.html#91\" > Taproot\\IndieAuth\\Middleware\\DoubleSubmitCookieCsrfMiddleware::process< \/a>"],[100,3,"< a href = \"Middleware\/DoubleSubmitCookieCsrfMiddleware.php.html#114\" > Taproot\\IndieAuth\\Middleware\\DoubleSubmitCookieCsrfMiddleware::isValid< \/a>"],[0,1,"< a href = \"Middleware\/NoOpMiddleware.php.html#17\" > Taproot\\IndieAuth\\Middleware\\NoOpMiddleware::process< \/a>"],[100,1,"< a href = \"Middleware\/ResponseRequestHandler.php.html#12\" > Taproot\\IndieAuth\\Middleware\\ResponseRequestHandler::__construct< \/a>"],[100,1,"< a href = \"Middleware\/ResponseRequestHandler.php.html#16\" > Taproot\\IndieAuth\\Middleware\\ResponseRequestHandler::handle< \/a>"],[100,17,"< a href = \"Server.php.html#188\" > Taproot\\IndieAuth\\Server::__construct< \/a>"],[100,1,"< a href = \"Server.php.html#283\" > Taproot\\IndieAuth\\Server::getTokenStorage< \/a>"],[92.90322580645162,51,"< a href = \"Server.php.html#322\" > Taproot\\IndieAuth\\Server::handleAuthorizationEndpointRequest< \/a>"],[95.34883720930233,11,"< a href = \"Server.php.html#680\" > Taproot\\IndieAuth\\Server::handleTokenEndpointRequest< \/a>"],[100,3,"< a href = \"Server.php.html#775\" > Taproot\\IndieAuth\\Server::handleException< \/a>"],[81.81818181818183,4,"< a href = \"Storage\/FilesystemJsonStorage.php.html#40\" > Taproot\\IndieAuth\\Storage\\FilesystemJsonStorage::__construct< \/a>"],[100,1,"< a href = \"Storage\/FilesystemJsonStorage.php.html#62\" > Taproot\\IndieAuth\\Storage\\FilesystemJsonStorage::setLogger< \/a>"],[85.71428571428571,3,"< a href = \"Storage\/FilesystemJsonStorage.php.html#68\" > Taproot\\IndieAuth\\Storage\\FilesystemJsonStorage::createAuthCode< \/a>"],[92.85714285714286,11,"< a href = \"Storage\/FilesystemJsonStorage.php.html#82\" > Taproot\\IndieAuth\\Storage\\FilesystemJsonStorage::exchangeAuthCodeForAccessToken< \/a>"],[100,5,"< a href = \"Storage\/File
.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 >