UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

27 lines (23 loc) 644 B
/** * Copyright IBM Corp. 2024, 2025 */ import { Assertion as KindAssertion } from '@apic/api-model/test/Assertion.js'; import { AssertionSchema } from '../schemas/assertions.schema.js'; import { transformZodErrors } from '../helpers/zod-error-formatter.helper.js'; export type Assertion = KindAssertion; export class AssertionFactory { create(raw: any): Assertion { let parsed; try { parsed = AssertionSchema.parse(raw); } catch (error) { throw transformZodErrors(error); } const model = { kind: parsed.kind, metadata: parsed.metadata, spec: parsed.spec, }; return model; } }