From ae468688daeb90f01e966b0eb996f81e0eacf753 Mon Sep 17 00:00:00 2001 From: igorsatsyuk Date: Tue, 7 Jul 2026 18:28:31 +0300 Subject: [PATCH] Fix SonarQube test assertions --- .../audit-dashboard/audit-dashboard.component.spec.ts | 2 +- .../audit-timeline/audit-timeline.component.spec.ts | 11 +++++++++-- .../features/audit-timeline/timeline-grouping.spec.ts | 6 +++--- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/frontend/audit-ui/src/app/features/audit-dashboard/audit-dashboard.component.spec.ts b/frontend/audit-ui/src/app/features/audit-dashboard/audit-dashboard.component.spec.ts index aade77e2..459125fa 100644 --- a/frontend/audit-ui/src/app/features/audit-dashboard/audit-dashboard.component.spec.ts +++ b/frontend/audit-ui/src/app/features/audit-dashboard/audit-dashboard.component.spec.ts @@ -422,7 +422,7 @@ describe('AuditDashboardComponent', () => { await init(fullSpy); expect(component.estimatedTotal()).toBe(21); const displayed = component.logs$.value; - expect(displayed.length).toBe(20); + expect(displayed.map(log => log.id)).toEqual(Array.from({ length: 20 }, (_, i) => i + 1)); }); it('effectiveIntegrityStatus keeps list status until the drawer updates the row', async () => { diff --git a/frontend/audit-ui/src/app/features/audit-timeline/audit-timeline.component.spec.ts b/frontend/audit-ui/src/app/features/audit-timeline/audit-timeline.component.spec.ts index 8b236cdf..f741237f 100644 --- a/frontend/audit-ui/src/app/features/audit-timeline/audit-timeline.component.spec.ts +++ b/frontend/audit-ui/src/app/features/audit-timeline/audit-timeline.component.spec.ts @@ -65,8 +65,15 @@ describe('AuditTimelineComponent', () => { createComponent(); const el = fixture.nativeElement as HTMLElement; - expect(el.querySelectorAll('[data-testid^="timeline-day-"]').length).toBe(2); - expect(el.querySelectorAll('[data-testid^="timeline-hour-"]').length).toBe(2); + const dayIds = Array.from(el.querySelectorAll('[data-testid^="timeline-day-"]')).map(node => + node.getAttribute('data-testid') + ); + const hourIds = Array.from(el.querySelectorAll('[data-testid^="timeline-hour-"]')).map(node => + node.getAttribute('data-testid') + ); + + expect(dayIds).toEqual(['timeline-day-2026-05-24', 'timeline-day-2026-05-23']); + expect(hourIds).toEqual(['timeline-hour-2026-05-24 10:00', 'timeline-hour-2026-05-23 08:00']); expect(el.querySelector('[data-testid="timeline-event-2"]')).toBeTruthy(); expect(el.textContent).toContain('2026-05-24'); expect(el.textContent).toContain('10:00'); diff --git a/frontend/audit-ui/src/app/features/audit-timeline/timeline-grouping.spec.ts b/frontend/audit-ui/src/app/features/audit-timeline/timeline-grouping.spec.ts index e0592f73..c5a8021a 100644 --- a/frontend/audit-ui/src/app/features/audit-timeline/timeline-grouping.spec.ts +++ b/frontend/audit-ui/src/app/features/audit-timeline/timeline-grouping.spec.ts @@ -24,10 +24,10 @@ describe('groupAuditLogsByTimeline', () => { buildLog({ id: 3, eventId: 'event-3', occurredAt: '2026-05-23T08:00:00Z' }), ]); - expect(groups.length).toBe(2); + expect(groups.map(group => group.key)).toEqual(['2026-05-24', '2026-05-23']); expect(groups[0].key).toBe('2026-05-24'); expect(groups[0].total).toBe(2); - expect(groups[0].hours.length).toBe(1); + expect(groups[0].hours.map(hour => hour.key)).toEqual(['2026-05-24 10:00']); expect(groups[0].hours[0].key).toBe('2026-05-24 10:00'); expect(groups[0].hours[0].total).toBe(2); expect(groups[0].hours[0].events.map(event => event.id)).toEqual([2, 1]); @@ -41,7 +41,7 @@ describe('groupAuditLogsByTimeline', () => { buildLog({ id: 2, eventId: 'event-2', occurredAt: '2026-05-24T10:15:00Z' }), ]); - expect(groups.length).toBe(1); + expect(groups.map(group => group.key)).toEqual(['2026-05-24']); expect(groups[0].total).toBe(1); expect(groups[0].hours[0].events[0].id).toBe(2); });