UNPKG

@ply-ct/ply

Version:

REST API Automated Testing

27 lines (24 loc) 795 B
import { StepExec, ExecResult } from './exec'; import { ExecContext } from './context'; /** * Cannot have side-effects (no updating values); */ export class DecideExec extends StepExec { async run(context: ExecContext): Promise<ExecResult> { const expression = context.step.attributes?.expression; if (expression) { let expr = expression; if (!this.isExpression(expr)) { expr = '${' + expr + '}'; } const result = context.evaluateToString(expr); context.stepInstance.result = result; return { status: 'Passed' }; } else { return { status: 'Errored', message: 'Missing attribute: expression' }; } } isTrustRequired() { return true; } }