Files
prowler/ui/test-utils/compliance-watchlist.ts
2026-08-05 11:18:45 +02:00

44 lines
1.2 KiB
TypeScript

import type { ComplianceCatalogEntry } from "@/types/compliance-watchlist";
import {
UNIVERSAL_PROVIDER_TYPE,
WATCHLIST_SCOPE,
} from "@/types/compliance-watchlist";
type CatalogEntryOverrides = Partial<ComplianceCatalogEntry> &
Pick<ComplianceCatalogEntry, "complianceId" | "providerType">;
export const makeComplianceCatalogEntry = ({
complianceId,
providerType,
...overrides
}: CatalogEntryOverrides): ComplianceCatalogEntry => {
const inWatchlist = overrides.inWatchlist ?? false;
return {
id: `${providerType}:${complianceId}`,
complianceId,
providerType,
scope:
providerType === UNIVERSAL_PROVIDER_TYPE
? WATCHLIST_SCOPE.UNIVERSAL
: WATCHLIST_SCOPE.PROVIDER,
providerTypes:
providerType === UNIVERSAL_PROVIDER_TYPE
? ["aws", "azure", "gcp"]
: [providerType],
framework: complianceId,
name: complianceId,
version: "1.0",
description: "",
totalRequirements: 10,
requirementsPassed: 5,
requirementsFailed: 5,
requirementsManual: 0,
score: 50,
hasData: true,
inWatchlist,
watchlistEntryId: inWatchlist ? "entry-1" : null,
...overrides,
};
};