Commit b0bae50e authored by Alexander Turinske's avatar Alexander Turinske Committed by Phil Hughes

Add the scan vendor into the scanner column

- on the project dashboard, show the scan vendor below the scanner type
  in the scanner column
- if the vendor does not exist, show the scanner name
- add tests
parent 7c55c671
...@@ -287,9 +287,12 @@ export default { ...@@ -287,9 +287,12 @@ export default {
</template> </template>
<template #cell(reportType)="{ item }"> <template #cell(reportType)="{ item }">
<span data-testid="vulnerability-report-type" class="text-capitalize">{{ <div data-testid="vulnerability-report-type" class="text-capitalize">
useConvertReportType(item.reportType) {{ useConvertReportType(item.reportType) }}
}}</span> </div>
<div data-testid="vulnerability-vendor" class="gl-text-gray-500">
{{ item.scanner.vendor }}
</div>
</template> </template>
<template #table-busy> <template #table-busy>
......
...@@ -39,4 +39,7 @@ fragment Vulnerability on Vulnerability { ...@@ -39,4 +39,7 @@ fragment Vulnerability on Vulnerability {
nameWithNamespace nameWithNamespace
} }
reportType reportType
scanner {
vendor
}
} }
---
title: Add the scan vendor into the scanner column of the vulnerability list
merge_request: 36145
author:
type: changed
...@@ -22,6 +22,9 @@ export const generateVulnerabilities = () => [ ...@@ -22,6 +22,9 @@ export const generateVulnerabilities = () => [
project: { project: {
nameWithNamespace: 'Administrator / Security reports', nameWithNamespace: 'Administrator / Security reports',
}, },
scanner: {
vendor: 'GitLab',
},
}, },
{ {
id: 'id_1', id: 'id_1',
...@@ -42,6 +45,9 @@ export const generateVulnerabilities = () => [ ...@@ -42,6 +45,9 @@ export const generateVulnerabilities = () => [
project: { project: {
nameWithNamespace: 'Administrator / Vulnerability reports', nameWithNamespace: 'Administrator / Vulnerability reports',
}, },
scanner: {
vendor: 'GitLab',
},
}, },
{ {
id: 'id_2', id: 'id_2',
...@@ -55,6 +61,9 @@ export const generateVulnerabilities = () => [ ...@@ -55,6 +61,9 @@ export const generateVulnerabilities = () => [
project: { project: {
nameWithNamespace: 'Mixed Vulnerabilities / Dependency List Test 01', nameWithNamespace: 'Mixed Vulnerabilities / Dependency List Test 01',
}, },
scanner: {
vendor: 'My Custom Scanner',
},
}, },
{ {
id: 'id_3', id: 'id_3',
...@@ -67,6 +76,7 @@ export const generateVulnerabilities = () => [ ...@@ -67,6 +76,7 @@ export const generateVulnerabilities = () => [
project: { project: {
nameWithNamespace: 'Mixed Vulnerabilities / Rails App', nameWithNamespace: 'Mixed Vulnerabilities / Rails App',
}, },
scanner: {},
}, },
{ {
id: 'id_4', id: 'id_4',
...@@ -77,6 +87,7 @@ export const generateVulnerabilities = () => [ ...@@ -77,6 +87,7 @@ export const generateVulnerabilities = () => [
project: { project: {
nameWithNamespace: 'Administrator / Security reports', nameWithNamespace: 'Administrator / Security reports',
}, },
scanner: {},
}, },
]; ];
......
...@@ -214,6 +214,16 @@ describe('Vulnerability list component', () => { ...@@ -214,6 +214,16 @@ describe('Vulnerability list component', () => {
expect(cells.at(2).text()).toBe('Custom scanner without translation'); expect(cells.at(2).text()).toBe('Custom scanner without translation');
expect(cells.at(3).text()).toBe(''); expect(cells.at(3).text()).toBe('');
}); });
it('should display the vulnerability vendor if the vulnerability vendor does exist', () => {
const cells = findDataCells('vulnerability-vendor');
expect(cells.at(0).text()).toBe('GitLab');
});
it('should display an empty string if the vulnerability vendor does not exist', () => {
const cells = findDataCells('vulnerability-vendor');
expect(cells.at(3).text()).toBe('');
});
}); });
describe('when has an issue associated', () => { describe('when has an issue associated', () => {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment