package com.pablissimo.sonar.model; import org.junit.Test; import org.sonar.api.rule.Severity; import org.sonar.api.rules.RuleType; import org.sonar.api.server.debt.DebtRemediationFunction; import org.sonar.api.server.rule.RulesDefinition; import static org.junit.Assert.assertEquals; public class TsLintRuleTest { @Test public void ruleWithoutDebtRemediation() { TsLintRule rule = new TsLintRule( "key", Severity.MAJOR, "name", "<html></html>" ); assertEquals("key", rule.key); assertEquals(Severity.MAJOR, rule.severity); assertEquals("name", rule.name); assertEquals("<html></html>", rule.htmlDescription); assertEquals(false, rule.hasDebtRemediation); assertEquals(DebtRemediationFunction.Type.CONSTANT_ISSUE, rule.debtRemediationFunction); assertEquals("0min", rule.debtRemediationScalar); assertEquals("0min", rule.debtRemediationOffset); assertEquals(null, rule.debtType); } @Test public void ruleWithDebtRemediation() { TsLintRule rule = new TsLintRule( "key", Severity.MAJOR, "name", "<html></html>", DebtRemediationFunction.Type.LINEAR_OFFSET, "1min", "2min", RuleType.CODE_SMELL.name() ); assertEquals("key", rule.key); assertEquals(Severity.MAJOR, rule.severity); assertEquals("name", rule.name); assertEquals("<html></html>", rule.htmlDescription); assertEquals(true, rule.hasDebtRemediation); assertEquals(DebtRemediationFunction.Type.LINEAR_OFFSET, rule.debtRemediationFunction); assertEquals("1min", rule.debtRemediationScalar); assertEquals("2min", rule.debtRemediationOffset); assertEquals(RuleType.CODE_SMELL.name(), rule.debtType); } }