UNPKG

tslint-clean-code

Version:
32 lines 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var TestHelper_1 = require("./TestHelper"); var noComplexConditionalsRule_1 = require("../noComplexConditionalsRule"); var FAILURE_STRING = noComplexConditionalsRule_1.Rule.FAILURE_STRING; describe('noComplexConditionalsRule', function () { var ruleName = 'no-complex-conditionals'; it('should pass on single variable as conditional expression', function () { var script = "\n const shouldDoStuff = (((status === 1 || status === 2 || status === 3) || isSkyBlue) && isRightDay);\n if (shouldDoStuff) {\n doStuff();\n }\n "; TestHelper_1.TestHelper.assertViolations(ruleName, script, []); }); it('should pass on function call as conditional expression', function () { var script = "\n class StuffDoer {\n doTheThing() {\n if (this.shouldDoStuff()) {\n doStuff();\n }\n }\n shouldDoStuff() {\n return (((status === 1 || status === 2 || status === 3) || isSkyBlue) && isRightDay);\n }\n }\n "; TestHelper_1.TestHelper.assertViolations(ruleName, script, []); }); it('should fail on complex conditional expression in if statement', function () { var script = "\n // Test\n if (((status === 1 || status === 2 || status === 3) || isSkyBlue) && isRightDay) {\n doStuff();\n }\n "; TestHelper_1.TestHelper.assertViolations(ruleName, script, [ { failure: FAILURE_STRING, name: 'file.ts', ruleName: ruleName, ruleSeverity: 'ERROR', startPosition: { character: 13, line: 3, }, }, ]); }); }); //# sourceMappingURL=NoComplexConditionalsRuleTests.js.map