Skip to content

Commit e364153

Browse files
committed
filter name displayed for executables to reduce visible nonoise
1 parent 52ef2e2 commit e364153

2 files changed

Lines changed: 31 additions & 12 deletions

File tree

codespeed/tests/test_views_data.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -86,24 +86,24 @@ def test_get_comparisonexes_master_default_branch(self):
8686
self.assertEqual(executables[self.project][0]['key'],
8787
'1:L:master')
8888
self.assertEqual(executables[self.project][0]['name'],
89-
'TestExecutable1 latest')
89+
'Executable1 latest')
9090
self.assertEqual(executables[self.project][0]['revision'],
9191
self.revision_1_master)
9292

9393
self.assertEqual(executables[self.project][1]['key'],
9494
'2:L:master')
9595
self.assertEqual(executables[self.project][1]['name'],
96-
'TestExecutable2 latest')
96+
'Executable2 latest')
9797

9898
self.assertEqual(executables[self.project][2]['key'],
9999
'1:L:custom')
100100
self.assertEqual(executables[self.project][2]['name'],
101-
'TestExecutable1 latest in branch \'custom\'')
101+
'Executable1 latest in branch \'custom\'')
102102

103103
self.assertEqual(executables[self.project][3]['key'],
104104
'2:L:custom')
105105
self.assertEqual(executables[self.project][3]['name'],
106-
'TestExecutable2 latest in branch \'custom\'')
106+
'Executable2 latest in branch \'custom\'')
107107

108108
self.assertEqual(exe_keys[0], '1:L:master')
109109
self.assertEqual(exe_keys[1], '2:L:master')
@@ -125,24 +125,24 @@ def test_get_comparisonexes_custom_default_branch(self):
125125
self.assertEqual(executables[self.project][0]['key'],
126126
'1:L:master')
127127
self.assertEqual(executables[self.project][0]['name'],
128-
'TestExecutable1 latest in branch \'master\'')
128+
'Executable1 latest in branch \'master\'')
129129
self.assertEqual(executables[self.project][0]['revision'],
130130
self.revision_1_master)
131131

132132
self.assertEqual(executables[self.project][1]['key'],
133133
'2:L:master')
134134
self.assertEqual(executables[self.project][1]['name'],
135-
'TestExecutable2 latest in branch \'master\'')
135+
'Executable2 latest in branch \'master\'')
136136

137137
self.assertEqual(executables[self.project][2]['key'],
138138
'1:L:custom')
139139
self.assertEqual(executables[self.project][2]['name'],
140-
'TestExecutable1 latest')
140+
'Executable1 latest')
141141

142142
self.assertEqual(executables[self.project][3]['key'],
143143
'2:L:custom')
144144
self.assertEqual(executables[self.project][3]['name'],
145-
'TestExecutable2 latest')
145+
'Executable2 latest')
146146

147147
self.assertEqual(exe_keys[0], '1:L:master')
148148
self.assertEqual(exe_keys[1], '2:L:master')

codespeed/views_data.py

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,31 @@ def getcomparisonexes():
130130
for proj in Project.objects.all():
131131
executables = []
132132
executablekeys = []
133+
proj_name_lower = str(proj).lower()
134+
proj_name_len = len(proj_name_lower)
135+
136+
def short_exestring(exe):
137+
s = get_sanitized_executable_name_for_comparison_view(exe)
138+
if s.endswith('-64'):
139+
s = s[:-3]
140+
return s
141+
142+
def strip_proj_prefix(name):
143+
if name.lower().startswith(proj_name_lower):
144+
rest = name[proj_name_len:]
145+
if rest and rest[0] in (' ', '-'):
146+
rest = rest[1:]
147+
if rest:
148+
return rest
149+
return name
150+
133151
# add all tagged revs for any project
134152
for exe in baselines:
135153
if exe['key'] != "none" and exe['executable'].project == proj:
154+
name = strip_proj_prefix(
155+
short_exestring(exe['executable']) + " " + exe['revision'].tag)
136156
executablekeys.append(exe['key'])
137-
executables.append(exe)
157+
executables.append(dict(exe, name=name))
138158

139159
# add latest revs of the project
140160
branches = Branch.objects.filter(project=proj, display_on_comparison_page=True)
@@ -147,8 +167,7 @@ def getcomparisonexes():
147167
# because we already added tagged revisions
148168
if rev.tag == "":
149169
for exe in Executable.objects.filter(project=proj):
150-
exestring = get_sanitized_executable_name_for_comparison_view(exe)
151-
name = exestring + " latest"
170+
name = short_exestring(exe) + " latest"
152171
if branch.name != proj.default_branch:
153172
name += " in branch '" + branch.name + "'"
154173
key = str(exe.id) + ":L:" + branch.name
@@ -157,7 +176,7 @@ def getcomparisonexes():
157176
'key': key,
158177
'executable': exe,
159178
'revision': rev,
160-
'name': name,
179+
'name': strip_proj_prefix(name),
161180
})
162181
all_executables[proj] = executables
163182
exekeys += executablekeys

0 commit comments

Comments
 (0)