MCPcopy
hub / github.com/affaan-m/ECC / runTests

Function runTests

tests/scripts/platform-audit.test.js:165–457  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

163}
164
165function runTests() {
166 console.log('\n=== Testing platform-audit.js ===\n');
167
168 let passed = 0;
169 let failed = 0;
170
171 if (test('parseArgs accepts supported flags and rejects invalid values', () => {
172 const { parseArgs } = require(SCRIPT);
173 const rootDir = createTempDir('platform-audit-args-');
174
175 try {
176 const parsed = parseArgs([
177 'node',
178 'script',
179 '--format=json',
180 `--root=${rootDir}`,
181 '--json',
182 '--repo',
183 'affaan-m/ECC',
184 '--max-open-prs',
185 '5',
186 '--max-open-issues',
187 '6',
188 '--allow-untracked',
189 'docs/drafts/'
190 ]);
191
192 assert.strictEqual(parsed.format, 'json');
193 assert.strictEqual(parsed.root, path.resolve(rootDir));
194 assert.deepStrictEqual(parsed.repos, ['affaan-m/ECC']);
195 assert.strictEqual(parsed.thresholds.maxOpenPrs, 5);
196 assert.strictEqual(parsed.thresholds.maxOpenIssues, 6);
197 assert.deepStrictEqual(parsed.allowUntracked, ['docs/drafts/']);
198
199 assert.throws(() => parseArgs(['node', 'script', '--format', 'xml']), /Invalid format/);
200 assert.throws(() => parseArgs(['node', 'script', '--write', 'audit.md']), /--write requires/);
201 assert.throws(() => parseArgs(['node', 'script', '--repo']), /--repo requires a value/);
202 assert.throws(() => parseArgs(['node', 'script', '--max-open-prs', 'x']), /Invalid --max-open-prs/);
203 assert.throws(() => parseArgs(['node', 'script', '--unknown']), /Unknown argument/);
204 } finally {
205 cleanup(rootDir);
206 }
207 })) passed++; else failed++;
208
209 if (test('skip-github report checks local release and security evidence', () => {
210 const projectRoot = createTempDir('platform-audit-local-');
211
212 try {
213 seedRepo(projectRoot);
214 const parsed = JSON.parse(run(['--format=json', `--root=${projectRoot}`, '--skip-github'], { cwd: projectRoot }));
215
216 assert.strictEqual(parsed.schema_version, 'ecc.platform-audit.v1');
217 assert.strictEqual(parsed.ready, true);
218 assert.strictEqual(parsed.github.skipped, true);
219 assert.ok(parsed.checks.some(check => check.id === 'roadmap-linear-mirror' && check.status === 'pass'));
220 assert.ok(parsed.checks.some(check => check.id === 'supply-chain-runbook' && check.status === 'pass'));
221 assert.ok(parsed.checks.some(check => check.id === 'operator-dashboard-command' && check.status === 'pass'));
222 assert.ok(parsed.checks.some(check => check.id === 'operator-readiness-dashboard' && check.status === 'pass'));

Callers 1

Calls 11

okMethod · 0.80
testFunction · 0.70
createTempDirFunction · 0.70
cleanupFunction · 0.70
seedRepoFunction · 0.70
runFunction · 0.70
writeGhShimFunction · 0.70
discussionEnabledGhKeyFunction · 0.70
discussionGhKeyFunction · 0.70
runProcessFunction · 0.70
parseArgsFunction · 0.50

Tested by

no test coverage detected