@sun-asterisk/sunlint
Version:
āļø SunLint - Multi-language static analysis tool for code quality and security | Sun* Engineering Standards
49 lines (37 loc) ⢠1.37 kB
JavaScript
/**
* Quick validation that unified rule registry system is working
*/
const { getInstance } = require('./core/unified-rule-registry');
async function validateUnifiedSystem() {
console.log('š Validating unified rule registry system...\n');
try {
const registry = getInstance();
await registry.initialize();
console.log(`ā
Registry loaded: ${registry.rules.size} rules`);
// Test specific rules
const testRules = ['C006', 'C047', 'C002'];
console.log('\nš Testing specific rules:');
for (const ruleId of testRules) {
const rule = registry.rules.get(ruleId);
if (rule) {
console.log(` ā
${ruleId}: ${rule.title}`);
if (rule.engineMappings?.eslint) {
console.log(` ESLint: ${JSON.stringify(rule.engineMappings.eslint)}`);
}
if (rule.engineMappings?.heuristic) {
console.log(` Heuristic: ${rule.engineMappings.heuristic.implementation}`);
}
} else {
console.log(` ā ${ruleId}: NOT FOUND`);
}
}
console.log('\nš Unified rule registry system is working correctly!');
} catch (error) {
console.error('ā Validation failed:', error.message);
}
}
if (require.main === module) {
validateUnifiedSystem();
}
module.exports = { validateUnifiedSystem };