blob: b4b26307bc172f8b158c90cc1cc864547bda7708 [file] [log] [blame]
#!/usr/bin/env python
# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import argparse
import json
import os
import string
import sys
sys.path.insert(
1,
os.path.join(os.path.dirname(os.path.realpath(__file__)), '..'))
from tracing.metrics import discover
import tracing_project
def Main():
all_registered_metrics = set(discover.DiscoverMetrics(
['/tracing/metrics/all_metrics.html']))
all_modules = list(
'/' + rel_path for rel_path in
tracing_project.TracingProject().FindAllMetricsModuleRelPaths())
all_possible_metrics = set(discover.DiscoverMetrics(all_modules))
unregistered_metrics = all_possible_metrics - all_registered_metrics
if unregistered_metrics:
print ('These metrics are unregistered: %s. Please import their modules in '
'tracing/tracing/metrics/all_metrics.html' %
', '.join(unregistered_metrics))
return 1
uppercased_metrics = []
for m in all_possible_metrics:
if str.isupper(m[0]):
uppercased_metrics.append(m)
if uppercased_metrics:
print ('These metrics must be renamed to start with a lower-case: %s' %
uppercased_metrics)
return 1
return 0
if __name__ == '__main__':
sys.exit(Main())