@diullei/codeguardian
Version:
Open-source developer tool to validate and enforce architectural rules, especially for AI-generated code
34 lines • 1.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AssertCountRule = void 0;
const core_1 = require("../core");
class AssertCountRule extends core_1.AssertionRule {
condition;
value;
constructor(id, condition, value) {
super(id);
this.condition = condition;
this.value = value;
}
async assert(items, _context) {
const count = Array.isArray(items) ? items.length : 0;
switch (this.condition) {
case '>':
return count > this.value;
case '>=':
return count >= this.value;
case '<':
return count < this.value;
case '<=':
return count <= this.value;
case '==':
return count === this.value;
case '!=':
return count !== this.value;
default:
throw new Error(`Unknown condition: ${this.condition}`);
}
}
}
exports.AssertCountRule = AssertCountRule;
//# sourceMappingURL=AssertCountRule.js.map