From 89f6c3544cbf784201461ea8433978c0e42d3795 Mon Sep 17 00:00:00 2001 From: wandmagic <156969148+wandmagic@users.noreply.github.com> Date: Tue, 3 Sep 2024 20:04:26 -0400 Subject: [PATCH] Improve test runner and make commands (#649) * add make update command * add make constraint * improve first run on fresh constraint --- src/scripts/dev-constraint.cjs | 7 +++++-- src/validations/module.mk | 6 ++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/scripts/dev-constraint.cjs b/src/scripts/dev-constraint.cjs index ea76c32ed..00a61fc92 100644 --- a/src/scripts/dev-constraint.cjs +++ b/src/scripts/dev-constraint.cjs @@ -229,12 +229,15 @@ async function runCucumberTest(constraintId, testFiles) { const nodeOptions = '--loader ts-node/esm --no-warnings --experimental-specifier-resolution=node'; const cucumberCommand = `NODE_OPTIONS="${nodeOptions}" npx cucumber-js`; - const scenarioLines = getScenarioLineNumbers(featureFile, constraintId,testFiles); + let scenarioLines = getScenarioLineNumbers(featureFile, constraintId,testFiles); if (scenarioLines.length === 0) { console.error(`No scenarios found for constraintId: ${constraintId}`); - execSync("npm run test:coverage",{stdio:'inherit'}); + execSync("npm run test:coverage",{stdio:'ignore'}); + scenarioLines = getScenarioLineNumbers(featureFile, constraintId,testFiles); + if(scenarioLines.length===0){ return false; + } } try { diff --git a/src/validations/module.mk b/src/validations/module.mk index 2aab9340e..c421e8dd5 100644 --- a/src/validations/module.mk +++ b/src/validations/module.mk @@ -21,6 +21,12 @@ build-validations: clean-validations: @echo "Nothing to clean" +update: + npm install + $(OSCAL_CLI) use latest +constraint: + npm run constraint + test-validations: @echo "Validating rev5 artifacts recursively..." $(OSCAL_CLI) validate -f $(REV5_BASELINES) -e ./src/validations/constraints/fedramp-external-constraints.xml -r