36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
import { describe, expect, it } from 'vitest';
|
|
import type { FindingRecord } from '../../src/domain/finding';
|
|
import { findingCardStatus } from '../../src/components/FindingCard/FindingCard';
|
|
|
|
const record: FindingRecord = {
|
|
id: 'record-1',
|
|
index: 0,
|
|
title: 'Application name and geographic location additional contexts are disabled on MFA',
|
|
fields: [
|
|
{ index: 0, label: 'Severity', value: 'High' },
|
|
{ index: 1, label: 'Score', value: '0' },
|
|
{ index: 2, label: 'Weight', value: '6' },
|
|
{ index: 3, label: 'Result', value: 'IOE Found' }
|
|
],
|
|
filled: [],
|
|
meta: []
|
|
};
|
|
|
|
describe('findingCardStatus', () => {
|
|
it('selects only the result/status field for the compact record card', () => {
|
|
expect(findingCardStatus(record)).toMatchObject({ label: 'Result', value: 'IOE Found' });
|
|
});
|
|
|
|
it('zeigt bei Purple Knight Status statt des SI-Verweises aus Result', () => {
|
|
const projected: FindingRecord = {
|
|
...record,
|
|
fields: [
|
|
{ index: 0, label: 'Result', value: 'SI000067' },
|
|
{ index: 1, label: 'Status', value: 'IOE Found' },
|
|
{ index: 2, label: 'ShortName', value: 'SI000067' }
|
|
]
|
|
};
|
|
|
|
expect(findingCardStatus(projected, 'purple-knight')).toMatchObject({ label: 'Status', value: 'Failed' });
|
|
});
|
|
}); |