From 0fa51d07a3683fea5a29c75d7944389918b3176f Mon Sep 17 00:00:00 2001 From: Ahmed Abdelsalam Date: Fri, 2 Feb 2024 14:24:09 +0100 Subject: [PATCH] Update links to reports in audit tasks listpage - Audit task reports should now open in audit reports detail page. --- .../__tests__/__snapshots__/listpage.js.snap | 6 +++--- .../__tests__/__snapshots__/row.js.snap | 4 ++-- .../__tests__/__snapshots__/table.js.snap | 10 +++++----- src/web/pages/audits/__tests__/row.js | 18 ++++++++--------- src/web/pages/audits/__tests__/table.js | 2 +- src/web/pages/audits/row.js | 20 ++++++++++++++++--- src/web/pages/tasks/row.js | 4 ++-- src/web/pages/tasks/status.js | 15 +++++++++----- 8 files changed, 49 insertions(+), 30 deletions(-) diff --git a/src/web/pages/audits/__tests__/__snapshots__/listpage.js.snap b/src/web/pages/audits/__tests__/__snapshots__/listpage.js.snap index 60423a37c0..9c14aa8b13 100644 --- a/src/web/pages/audits/__tests__/__snapshots__/listpage.js.snap +++ b/src/web/pages/audits/__tests__/__snapshots__/listpage.js.snap @@ -1320,7 +1320,7 @@ exports[`AuditPage tests should render full AuditPage 1`] = `
- Compliance Status + Compliance Percent
Wed, Jul 10, 2019 2:51 PM CEST diff --git a/src/web/pages/audits/__tests__/__snapshots__/row.js.snap b/src/web/pages/audits/__tests__/__snapshots__/row.js.snap index 40bd172c68..c2f874ff6e 100644 --- a/src/web/pages/audits/__tests__/__snapshots__/row.js.snap +++ b/src/web/pages/audits/__tests__/__snapshots__/row.js.snap @@ -316,7 +316,7 @@ exports[`Audit Row tests should render 1`] = `
Wed, Jul 10, 2019 2:51 PM CEST diff --git a/src/web/pages/audits/__tests__/__snapshots__/table.js.snap b/src/web/pages/audits/__tests__/__snapshots__/table.js.snap index 6f91d41311..d09d944aad 100644 --- a/src/web/pages/audits/__tests__/__snapshots__/table.js.snap +++ b/src/web/pages/audits/__tests__/__snapshots__/table.js.snap @@ -774,7 +774,7 @@ exports[`Audits table tests should render 1`] = `
- Compliance Status + Compliance Percent
Sat, Aug 10, 2019 2:51 PM CEST @@ -1212,7 +1212,7 @@ exports[`Audits table tests should render 1`] = `
Wed, Jul 10, 2019 2:51 PM CEST diff --git a/src/web/pages/audits/__tests__/row.js b/src/web/pages/audits/__tests__/row.js index e79b93446e..4ce5ff8227 100644 --- a/src/web/pages/audits/__tests__/row.js +++ b/src/web/pages/audits/__tests__/row.js @@ -122,11 +122,11 @@ describe('Audit Row tests', () => { const detailsLinks = getAllByTestId('details-link'); expect(detailsLinks[0]).toHaveTextContent('Done'); - expect(detailsLinks[0]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[0]).toHaveAttribute('href', '/auditreport/1234'); // Report expect(detailsLinks[1]).toHaveTextContent('Wed, Jul 10, 2019 2:51 PM CEST'); - expect(detailsLinks[1]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[1]).toHaveAttribute('href', '/auditreport/1234'); // Compliance Status expect(bars[1]).toHaveAttribute('title', '50%'); @@ -387,7 +387,7 @@ describe('Audit Row tests', () => { const detailsLinks = getAllByTestId('details-link'); expect(detailsLinks[0]).toHaveTextContent('0 %'); - expect(detailsLinks[0]).toHaveAttribute('href', '/report/5678'); + expect(detailsLinks[0]).toHaveAttribute('href', '/auditreport/5678'); // Report expect(detailsLinks.length).toBe(1); @@ -495,11 +495,11 @@ describe('Audit Row tests', () => { const detailsLinks = getAllByTestId('details-link'); expect(detailsLinks[0]).toHaveTextContent('Stopped'); - expect(detailsLinks[0]).toHaveAttribute('href', '/report/5678'); + expect(detailsLinks[0]).toHaveAttribute('href', '/auditreport/5678'); // Report expect(detailsLinks[1]).toHaveTextContent('Wed, Jul 10, 2019 2:51 PM CEST'); - expect(detailsLinks[1]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[1]).toHaveAttribute('href', '/auditreport/1234'); // Compliance Status expect(bars[1]).toHaveAttribute('title', '50%'); @@ -605,11 +605,11 @@ describe('Audit Row tests', () => { const detailsLinks = getAllByTestId('details-link'); expect(detailsLinks[0]).toHaveTextContent('Done'); - expect(detailsLinks[0]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[0]).toHaveAttribute('href', '/auditreport/1234'); // Report expect(detailsLinks[1]).toHaveTextContent('Wed, Jul 10, 2019 2:51 PM CEST'); - expect(detailsLinks[1]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[1]).toHaveAttribute('href', '/auditreport/1234'); // Compliance Status expect(bars[1]).toHaveAttribute('title', '50%'); @@ -718,11 +718,11 @@ describe('Audit Row tests', () => { const detailsLinks = getAllByTestId('details-link'); expect(detailsLinks[0]).toHaveTextContent('Done'); - expect(detailsLinks[0]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[0]).toHaveAttribute('href', '/auditreport/1234'); // Report expect(detailsLinks[1]).toHaveTextContent('Wed, Jul 10, 2019 2:51 PM CEST'); - expect(detailsLinks[1]).toHaveAttribute('href', '/report/1234'); + expect(detailsLinks[1]).toHaveAttribute('href', '/auditreport/1234'); // Compliance Status expect(bars[1]).toHaveAttribute('title', '50%'); diff --git a/src/web/pages/audits/__tests__/table.js b/src/web/pages/audits/__tests__/table.js index 4f5ba28dcb..56650a9835 100644 --- a/src/web/pages/audits/__tests__/table.js +++ b/src/web/pages/audits/__tests__/table.js @@ -149,7 +149,7 @@ describe('Audits table tests', () => { expect(header[0]).toHaveTextContent('Name'); expect(header[1]).toHaveTextContent('Status'); expect(header[2]).toHaveTextContent('Report'); - expect(header[3]).toHaveTextContent('Compliance Status'); + expect(header[3]).toHaveTextContent('Compliance Percent'); expect(header[4]).toHaveTextContent('Actions'); }); diff --git a/src/web/pages/audits/row.js b/src/web/pages/audits/row.js index cb67410c70..f04202e3a3 100644 --- a/src/web/pages/audits/row.js +++ b/src/web/pages/audits/row.js @@ -48,7 +48,21 @@ import {GREENBONE_SENSOR_SCANNER_TYPE} from 'gmp/models/scanner'; import ComplianceStatusBar from 'web/components/bar/compliancestatusbar'; -import {renderReport} from 'web/pages/tasks/row'; +import DateTime from 'web/components/date/datetime'; +import DetailsLink from 'web/components/link/detailslink'; + +const renderAuditReport = (report, links) => { + if (!isDefined(report)) { + return null; + } + return ( + + + + + + ); +}; const getComplianceStatus = report => { if (!isDefined(report)) { @@ -141,9 +155,9 @@ const Row = ({ {entity.comment && ({entity.comment})} - + - {renderReport(entity.last_report, links)} + {renderAuditReport(entity.last_report, links)} {isDefined(entity.last_report) && ( { +const renderReport = (report, links) => { if (!isDefined(report)) { return null; } return ( - + diff --git a/src/web/pages/tasks/status.js b/src/web/pages/tasks/status.js index 8383f34834..033ce9999a 100644 --- a/src/web/pages/tasks/status.js +++ b/src/web/pages/tasks/status.js @@ -35,7 +35,7 @@ const StyledDetailsLink = styled(DetailsLink)` } `; -const TaskStatus = ({task, links = true}) => { +const TaskStatus = ({task, links = true, isAudit = false}) => { let report_id; if (isDefined(task.current_report)) { report_id = task.current_report.id; @@ -47,16 +47,20 @@ const TaskStatus = ({task, links = true}) => { } return ( - + { }; TaskStatus.propTypes = { + isAudit: PropTypes.bool, links: PropTypes.bool, task: PropTypes.model.isRequired, };