Merge pull request #2345 from coreos-inc/logs-fixes
Various small fixes for dealing with action logs
This commit is contained in:
commit
2510769625
3 changed files with 30 additions and 7 deletions
|
@ -9,7 +9,7 @@ from endpoints.api import (resource, nickname, ApiResource, query_param, parse_a
|
||||||
RepositoryParamResource, require_repo_admin, related_user_resource,
|
RepositoryParamResource, require_repo_admin, related_user_resource,
|
||||||
format_date, require_user_admin, path_param, require_scope, page_support)
|
format_date, require_user_admin, path_param, require_scope, page_support)
|
||||||
from endpoints.exception import Unauthorized, NotFound
|
from endpoints.exception import Unauthorized, NotFound
|
||||||
from auth.permissions import AdministerOrganizationPermission, AdministerOrganizationPermission
|
from auth.permissions import AdministerOrganizationPermission
|
||||||
from auth.auth_context import get_authenticated_user
|
from auth.auth_context import get_authenticated_user
|
||||||
from data import model, database
|
from data import model, database
|
||||||
from auth import scopes
|
from auth import scopes
|
||||||
|
|
|
@ -1126,12 +1126,10 @@ LogUsageChart.prototype.buildData_ = function(aggregatedLogs) {
|
||||||
var title = this.titleMap_[aggregated.kind] || aggregated.kind;
|
var title = this.titleMap_[aggregated.kind] || aggregated.kind;
|
||||||
var datetime = parseDate(aggregated.datetime);
|
var datetime = parseDate(aggregated.datetime);
|
||||||
|
|
||||||
var day = datetime.getDate();
|
var day = ('0' + datetime.getDate()).slice(-2);
|
||||||
if (day < 10) {
|
var month = ('0' + (datetime.getMonth() + 1)).slice(-2);
|
||||||
day = '0' + day;
|
|
||||||
}
|
|
||||||
|
|
||||||
var formatted = (datetime.getMonth() + 1) + '/' + day;
|
var formatted = month + '/' + day;
|
||||||
var justdate = new Date(datetime.getFullYear(), datetime.getMonth(), datetime.getDate());
|
var justdate = new Date(datetime.getFullYear(), datetime.getMonth(), datetime.getDate());
|
||||||
var key = title + '_' + formatted;
|
var key = title + '_' + formatted;
|
||||||
var entry = {
|
var entry = {
|
||||||
|
|
|
@ -51,7 +51,8 @@ from endpoints.api.user import (PrivateRepositories, ConvertToOrganization, Sign
|
||||||
|
|
||||||
from endpoints.api.repotoken import RepositoryToken, RepositoryTokenList
|
from endpoints.api.repotoken import RepositoryToken, RepositoryTokenList
|
||||||
from endpoints.api.prototype import PermissionPrototype, PermissionPrototypeList
|
from endpoints.api.prototype import PermissionPrototype, PermissionPrototypeList
|
||||||
from endpoints.api.logs import UserLogs, OrgLogs, OrgAggregateLogs, UserAggregateLogs
|
from endpoints.api.logs import (UserLogs, OrgLogs, OrgAggregateLogs, UserAggregateLogs,
|
||||||
|
RepositoryLogs, RepositoryAggregateLogs)
|
||||||
from endpoints.api.billing import (UserCard, UserPlan, ListPlans, OrganizationCard,
|
from endpoints.api.billing import (UserCard, UserPlan, ListPlans, OrganizationCard,
|
||||||
OrganizationPlan)
|
OrganizationPlan)
|
||||||
from endpoints.api.discovery import DiscoveryResource
|
from endpoints.api.discovery import DiscoveryResource
|
||||||
|
@ -3551,6 +3552,30 @@ class TestOrgRobots(ApiTestCase):
|
||||||
|
|
||||||
|
|
||||||
class TestLogs(ApiTestCase):
|
class TestLogs(ApiTestCase):
|
||||||
|
def test_repo_logs(self):
|
||||||
|
self.login(ADMIN_ACCESS_USER)
|
||||||
|
|
||||||
|
json = self.getJsonResponse(RepositoryLogs, params=dict(repository='devtable/simple'))
|
||||||
|
assert 'logs' in json
|
||||||
|
assert 'start_time' in json
|
||||||
|
assert 'end_time' in json
|
||||||
|
|
||||||
|
def test_repo_logs_crossyear(self):
|
||||||
|
self.login(ADMIN_ACCESS_USER)
|
||||||
|
|
||||||
|
json = self.getJsonResponse(RepositoryLogs, params=dict(repository='devtable/simple',
|
||||||
|
starttime='12/01/2016',
|
||||||
|
endtime='1/09/2017'))
|
||||||
|
self.assertEquals('Thu, 01 Dec 2016 00:00:00 -0000', json['start_time'])
|
||||||
|
self.assertEquals('Tue, 10 Jan 2017 00:00:00 -0000', json['end_time'])
|
||||||
|
|
||||||
|
def test_repo_aggregate_logs(self):
|
||||||
|
self.login(ADMIN_ACCESS_USER)
|
||||||
|
|
||||||
|
json = self.getJsonResponse(RepositoryAggregateLogs, params=dict(repository='devtable/simple'))
|
||||||
|
assert 'aggregated' in json
|
||||||
|
assert len(json['aggregated']) > 0
|
||||||
|
|
||||||
def test_user_logs(self):
|
def test_user_logs(self):
|
||||||
self.login(ADMIN_ACCESS_USER)
|
self.login(ADMIN_ACCESS_USER)
|
||||||
|
|
||||||
|
|
Reference in a new issue