diff --git a/frontend/__tests__/components/WorkflowDashboard.test.js b/frontend/__tests__/components/WorkflowDashboard.test.js
index 2ecbc2ad..5266cc02 100644
--- a/frontend/__tests__/components/WorkflowDashboard.test.js
+++ b/frontend/__tests__/components/WorkflowDashboard.test.js
@@ -230,6 +230,17 @@ describe('', () => {
expect(workflowDashboardWrapper.html()).toMatchSnapshot();
});
+ it('should render only job name', async () => {
+ vi.spyOn(preferences, 'showOnlyJobName', 'get').mockReturnValueOnce(true);
+
+ fetchCctrayJson.mockResolvedValueOnce([jobDetails1, jobDetails2]);
+ const workflowDashboardWrapper = mountWithWrapper(WorkflowDashboard);
+
+ await flushPromises();
+
+ expect(workflowDashboardWrapper.findComponent(Job).find('a').text()).toBe('Cancel Previous Runs');
+ });
+
it.each([
['branch_protection_rule', [{ ...jobDetails1, triggeredEvent: 'branch_protection_rule' }, jobDetails2]],
['check_run', [{ ...jobDetails1, triggeredEvent: 'check_run' }, jobDetails2]],
diff --git a/frontend/src/components/Preferences.vue b/frontend/src/components/Preferences.vue
index 0784bd64..fc6e031f 100644
--- a/frontend/src/components/Preferences.vue
+++ b/frontend/src/components/Preferences.vue
@@ -39,6 +39,15 @@
@update:model-value="modelValueUpdated"
/>
+
+
+
this.showHealthyBuilds ? true : !this.isIdleHealthyBuild(lastBuildStatus, activity))
.filter(({ triggeredEvent }) =>
!this.hasPreferredTriggeredEvents ||
- preferences.showBuildsDueToTriggeredEvents.indexOf(triggeredEvent) !== -1);
+ preferences.showBuildsDueToTriggeredEvents.indexOf(triggeredEvent) !== -1)
+ .map(this.mapNameIfPreferred);
}
}
};
diff --git a/frontend/src/services/preferences.js b/frontend/src/services/preferences.js
index 8c0846b3..5cb6f2a7 100644
--- a/frontend/src/services/preferences.js
+++ b/frontend/src/services/preferences.js
@@ -70,6 +70,14 @@ class Preferences {
set showBuildsDueToTriggeredEvents(events) {
this.__set__('show-builds-due-to-triggered-events', JSON.stringify(events));
}
+
+ set showOnlyJobName(value) {
+ this.__set__('show-only-job-name', JSON.stringify(value));
+ }
+
+ get showOnlyJobName() {
+ return JSON.parse(this.__get__('show-only-job-name'));
+ }
}
export default new Preferences();
diff --git a/frontend/vite.config.js b/frontend/vite.config.js
index f93fd214..553c9f3b 100644
--- a/frontend/vite.config.js
+++ b/frontend/vite.config.js
@@ -44,10 +44,10 @@ export default defineConfig({
coverage: {
reporter: ['text', 'html'],
all: true,
- statements: 80.58,
- branches: 94.64,
- functions: 43.65,
- lines: 80.58,
+ statements: 80.62,
+ branches: 94.87,
+ functions: 44.18,
+ lines: 80.62,
thresholdAutoUpdate: true
},
setupFiles: '__tests__/vitest.setup.js'