def _MilestoneLabel(alerts): """Returns a milestone label string, or None. Because revision numbers for other repos may not be easily reconcilable with Chromium milestones, do not label them (see https://github.com/catapult-project/catapult/issues/2906). """ revisions = [a.end_revision for a in alerts if hasattr(a, 'end_revision')] if not revisions: return None end_revision = min(revisions) for a in alerts: if a.end_revision == end_revision: row_key = utils.GetRowKey(a.test, a.end_revision) row = row_key.get() if hasattr(row, 'r_commit_pos'): end_revision = row.r_commit_pos else: return None break try: milestone = _GetMilestoneForRevision(end_revision) except KeyError: logging.error('List of versions not in the expected format') if not milestone: return None logging.info('Matched rev %s to milestone %s.', end_revision, milestone) return 'M-%d' % milestone
def _GetRow(bot, test, rev): test_path = bot + '/' + test test_key = utils.TestKey(test_path) row_key = utils.GetRowKey(test_key, rev) row = row_key.get() if row: return row.value return None
def _GetRow(bot, test, rev): test_path = bot + '/' + test test_key = utils.TestKey(test_path) row_key = utils.GetRowKey(test_key, rev) if row_key.get(): return row_key.get().value else: return 0
def _AddDownstreamRows(self, keys): revisions = [1, 2, 1485025126, 1485099999] for key in keys: testing_common.AddRows(utils.TestPath(key), revisions) for key in keys: for rev in revisions: row_key = utils.GetRowKey(key, rev) row = row_key.get() row.r_commit_pos = str(rev / 10000) row.a_default_rev = 'r_foo' row.r_foo = 'abcdefghijk' row.put()
def _GetDisplayRev(bots, tests, rev): """Creates a user friendly commit position to display. For V8 and ChromiumPerf masters, this will just be the passed in rev. """ if bots and tests: test_path = bots[0] + '/' + tests[0] test_key = utils.TestKey(test_path) row_key = utils.GetRowKey(test_key, rev) row = row_key.get() if row and hasattr(row, 'r_commit_pos'): # Rule out masters like V8 if rev != row.r_commit_pos: # Rule out ChromiumPerf if hasattr(row, 'a_default_rev') and hasattr(row, row.a_default_rev): return row.r_commit_pos + '-' + getattr(row, row.a_default_rev)[:3] return rev
def testPost_NanFiltered(self): self._AddTestColumns(start_rev=15700, end_rev=16000, step=1) test_key = utils.OldStyleTestKey('ChromiumGPU/win7/dromaeo/jslib') row_key = utils.GetRowKey(test_key, 15900) row = row_key.get() row.value = float('nan') row.put() graphs = {'test_path_dict': {'ChromiumGPU/win7/dromaeo/jslib': [],}} # If the request is valid, a valid response will be returned. response = self.testapp.post('/graph_json', {'graphs': json.dumps(graphs)}) flot_json_str = response.body rows = json.loads(flot_json_str)['data']['0']['data'] self.assertEqual(149, len(rows))