oauth2-server/master/dashboard.html

301 lines
27 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Dashboard for /home/travis/build/thephpleague/oauth2-server/src</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/nv.d3.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="js/html5shiv.min.js"></script>
<script src="js/respond.min.js"></script>
<![endif]-->
</head>
<body>
<header>
<div class="container">
<div class="row">
<div class="col-md-12">
<ol class="breadcrumb">
<li><a href="index.html">/home/travis/build/thephpleague/oauth2-server/src</a></li>
<li class="active">(Dashboard)</li>
</ol>
</div>
</div>
</div>
</header>
<div class="container">
<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="Event/UserAuthenticationFailedEvent.php.html#17">UserAuthenticationFailedEvent</a></td><td class="text-right">75%</td></tr>
<tr><td><a href="Event/ClientAuthenticationFailedEvent.php.html#17">ClientAuthenticationFailedEvent</a></td><td class="text-right">75%</td></tr>
<tr><td><a href="Entity/AccessTokenEntity.php.html#17">AccessTokenEntity</a></td><td class="text-right">84%</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="Entity/AccessTokenEntity.php.html#17">AccessTokenEntity</a></td><td class="text-right">9</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="Event/UserAuthenticationFailedEvent.php.html#51"><abbr title="UserAuthenticationFailedEvent::getRequest">getRequest</a></a></td><td class="text-right">0%</td></tr>
<tr><td><a href="Event/ClientAuthenticationFailedEvent.php.html#51"><abbr title="ClientAuthenticationFailedEvent::getRequest">getRequest</a></a></td><td class="text-right">0%</td></tr>
<tr><td><a href="Entity/AccessTokenEntity.php.html#42"><abbr title="AccessTokenEntity::hasScope">hasScope</a></a></td><td class="text-right">0%</td></tr>
<tr><td><a href="TokenType/MAC.php.html#129"><abbr title="MAC::hash_equals">hash_equals</a></a></td><td class="text-right">80%</td></tr>
<tr><td><a href="Entity/AbstractTokenEntity.php.html#166"><abbr title="AbstractTokenEntity::formatScopes">formatScopes</a></a></td><td class="text-right">88%</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="Entity/AccessTokenEntity.php.html#42"><abbr title="AccessTokenEntity::hasScope">hasScope</abbr></a></td><td class="text-right">6</td></tr>
<tr><td><a href="TokenType/MAC.php.html#129"><abbr title="MAC::hash_equals">hash_equals</abbr></a></td><td class="text-right">4</td></tr>
<tr><td><a href="Entity/AbstractTokenEntity.php.html#166"><abbr title="AbstractTokenEntity::formatScopes">formatScopes</abbr></a></td><td class="text-right">4</td></tr>
</tbody>
</table>
</div>
</div>
</div>
<footer>
<hr/>
<p>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 2.0.14</a> using <a href="http://php.net/" target="_top">PHP 5.5.19</a> and <a href="http://phpunit.de/">PHPUnit 4.3.5</a> at Wed Jan 14 23:16:50 UTC 2015.</small>
</p>
</footer>
</div>
<script src="js/jquery.min.js" type="text/javascript"></script>
<script src="js/bootstrap.min.js" type="text/javascript"></script>
<script src="js/holder.js" type="text/javascript"></script>
<script src="js/d3.min.js" type="text/javascript"></script>
<script src="js/nv.d3.min.js" 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([0,0,0,0,0,0,0,0,2,1,2,33], "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,2,0,154], "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.scatter.onlyCircles(false);
chart.tooltipContent(function(key, y, e, 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,24,"<a href=\"AbstractServer.php.html#28\">AbstractServer<\/a>"],[100,21,"<a href=\"AuthorizationServer.php.html#20\">AuthorizationServer<\/a>"],[96.296296296296,18,"<a href=\"Entity\/AbstractTokenEntity.php.html#20\">AbstractTokenEntity<\/a>"],[84,9,"<a href=\"Entity\/AccessTokenEntity.php.html#17\">AccessTokenEntity<\/a>"],[100,11,"<a href=\"Entity\/AuthCodeEntity.php.html#17\">AuthCodeEntity<\/a>"],[100,5,"<a href=\"Entity\/ClientEntity.php.html#19\">ClientEntity<\/a>"],[100,6,"<a href=\"Entity\/RefreshTokenEntity.php.html#17\">RefreshTokenEntity<\/a>"],[100,4,"<a href=\"Entity\/ScopeEntity.php.html#19\">ScopeEntity<\/a>"],[100,23,"<a href=\"Entity\/SessionEntity.php.html#20\">SessionEntity<\/a>"],[75,3,"<a href=\"Event\/ClientAuthenticationFailedEvent.php.html#17\">ClientAuthenticationFailedEvent<\/a>"],[100,3,"<a href=\"Event\/SessionOwnerEvent.php.html#17\">SessionOwnerEvent<\/a>"],[75,3,"<a href=\"Event\/UserAuthenticationFailedEvent.php.html#17\">UserAuthenticationFailedEvent<\/a>"],[100,1,"<a href=\"Exception\/AccessDeniedException.php.html#17\">AccessDeniedException<\/a>"],[100,1,"<a href=\"Exception\/InvalidClientException.php.html#17\">InvalidClientException<\/a>"],[100,1,"<a href=\"Exception\/InvalidCredentialsException.php.html#17\">InvalidCredentialsException<\/a>"],[100,1,"<a href=\"Exception\/InvalidGrantException.php.html#17\">InvalidGrantException<\/a>"],[100,1,"<a href=\"Exception\/InvalidRefreshException.php.html#17\">InvalidRefreshException<\/a>"],[100,1,"<a href=\"Exception\/InvalidRequestException.php.html#17\">InvalidRequestException<\/a>"],[100,1,"<a href=\"Exception\/InvalidScopeException.php.html#17\">InvalidScopeException<\/a>"],[100,15,"<a href=\"Exception\/OAuthException.php.html#20\">OAuthException<\/a>"],[100,2,"<a href=\"Exception\/ServerErrorException.php.html#17\">ServerErrorException<\/a>"],[100,1,"<a href=\"Exception\/UnauthorizedClientException.php.html#17\">UnauthorizedClientException<\/a>"],[100,1,"<a href=\"Exception\/UnsupportedGrantTypeException.php.html#17\">UnsupportedGrantTypeException<\/a>"],[100,1,"<a href=\"Exception\/UnsupportedResponseTypeException.php.html#17\">UnsupportedResponseTypeException<\/a>"],[100,21,"<a href=\"Grant\/AbstractGrant.php.html#22\">AbstractGrant<\/a>"],[100,25,"<a href=\"Grant\/AuthCodeGrant.php.html#26\">AuthCodeGrant<\/a>"],[100,6,"<a href=\"Grant\/ClientCredentialsGrant.php.html#24\">ClientCredentialsGrant<\/a>"],[100,15,"<a href=\"Grant\/PasswordGrant.php.html#25\">PasswordGrant<\/a>"],[100,16,"<a href=\"Grant\/RefreshTokenGrant.php.html#24\">RefreshTokenGrant<\/a>"],[100,12,"<a href=\"ResourceServer.php.html#24\">ResourceServer<\/a>"],[100,2,"<a href=\"Storage\/AbstractStorage.php.html#19\">AbstractStorage<\/a>"],[100,5,"<a href=\"TokenType\/AbstractTokenType.php.html#17\">AbstractTokenType<\/a>"],[100,4,"<a href=\"TokenType\/Bearer.php.html#16\">Bearer<\/a>"],[96.491228070175,21,"<a href=\"TokenType\/MAC.php.html#21\">MAC<\/a>"],[100,4,"<a href=\"Util\/KeyAlgorithm\/DefaultAlgorithm.php.html#14\">DefaultAlgorithm<\/a>"],[100,2,"<a href=\"Util\/RedirectUri.php.html#17\">RedirectUri<\/a>"],[100,4,"<a href=\"Util\/SecureKey.php.html#20\">SecureKey<\/a>"],[100,3,"<a href=\"Entity\/EntityTrait.php.html#14\">EntityTrait<\/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.scatter.onlyCircles(false);
chart.tooltipContent(function(key, y, e, 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=\"AbstractServer.php.html#101\">AbstractServer::__construct<\/a>"],[100,2,"<a href=\"AbstractServer.php.html#111\">AbstractServer::setEventEmitter<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#126\">AbstractServer::addEventListener<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#136\">AbstractServer::getEventEmitter<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#148\">AbstractServer::setRequest<\/a>"],[100,2,"<a href=\"AbstractServer.php.html#160\">AbstractServer::getRequest<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#176\">AbstractServer::setClientStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#191\">AbstractServer::setSessionStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#206\">AbstractServer::setAccessTokenStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#221\">AbstractServer::setRefreshTokenStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#236\">AbstractServer::setAuthCodeStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#251\">AbstractServer::setScopeStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#264\">AbstractServer::getClientStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#274\">AbstractServer::getScopeStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#284\">AbstractServer::getSessionStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#294\">AbstractServer::getRefreshTokenStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#304\">AbstractServer::getAccessTokenStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#314\">AbstractServer::getAuthCodeStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#326\">AbstractServer::setTokenType<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#337\">AbstractServer::getTokenType<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#345\">AbstractServer::getMacStorage<\/a>"],[100,1,"<a href=\"AbstractServer.php.html#353\">AbstractServer::setMacStorage<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#77\">AuthorizationServer::__construct<\/a>"],[100,3,"<a href=\"AuthorizationServer.php.html#95\">AuthorizationServer::addGrantType<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#120\">AuthorizationServer::hasGrantType<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#130\">AuthorizationServer::getResponseTypes<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#142\">AuthorizationServer::requireScopeParam<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#154\">AuthorizationServer::scopeParamRequired<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#166\">AuthorizationServer::setDefaultScope<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#178\">AuthorizationServer::getDefaultScope<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#188\">AuthorizationServer::stateParamRequired<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#200\">AuthorizationServer::requireStateParam<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#212\">AuthorizationServer::getScopeDelimiter<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#224\">AuthorizationServer::setScopeDelimiter<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#236\">AuthorizationServer::getAccessTokenTTL<\/a>"],[100,1,"<a href=\"AuthorizationServer.php.html#248\">AuthorizationServer::setAccessTokenTTL<\/a>"],[100,3,"<a href=\"AuthorizationServer.php.html#262\">AuthorizationServer::issueAccessToken<\/a>"],[100,2,"<a href=\"AuthorizationServer.php.html#287\">AuthorizationServer::getGrantType<\/a>"],[100,1,"<a href=\"Entity\/AbstractTokenEntity.php.html#64\">AbstractTokenEntity::__construct<\/a>"],[100,1,"<a href=\"Entity\/AbstractTokenEntity.php.html#78\">AbstractTokenEntity::setSession<\/a>"],[100,1,"<a href=\"Entity\/AbstractTokenEntity.php.html#92\">AbstractTokenEntity::setExpireTime<\/a>"],[100,1,"<a href=\"Entity\/AbstractTokenEntity.php.html#104\">AbstractTokenEntity::getExpireTime<\/a>"],[100,1,"<a href=\"Entity\/AbstractTokenEntity.php.html#114\">AbstractTokenEntity::isExpired<\/a>"],[100,2,"<a href=\"Entity\/AbstractTokenEntity.php.html#126\">AbstractToken
.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>