本文整理汇总了Java中org.sonar.api.server.rule.RulesDefinition类的典型用法代码示例。如果您正苦于以下问题:Java RulesDefinition类的具体用法?Java RulesDefinition怎么用?Java RulesDefinition使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
RulesDefinition类属于org.sonar.api.server.rule包,在下文中一共展示了RulesDefinition类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: load_rule_S100
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void load_rule_S100() throws Exception {
@Rule(key = "S100") class TestRule {
}
ruleMetadataLoader.addRulesByAnnotatedClass(newRepository, list(TestRule.class));
newRepository.done();
RulesDefinition.Repository repository = context.repository(RULE_REPOSITORY_KEY);
RulesDefinition.Rule rule = repository.rule("S100");
assertThat(rule).isNotNull();
assertThat(rule.name()).isEqualTo("Function names should comply with a naming convention");
assertThat(rule.htmlDescription()).isEqualTo("<p>description S100</p>");
assertThat(rule.severity()).isEqualTo("MINOR");
assertThat(rule.type()).isEqualTo(RuleType.CODE_SMELL);
assertThat(rule.status()).isEqualTo(RuleStatus.READY);
assertThat(rule.tags()).containsExactly("convention");
DebtRemediationFunction remediation = rule.debtRemediationFunction();
assertThat(remediation).isNotNull();
assertThat(remediation.type()).isEqualTo(DebtRemediationFunction.Type.CONSTANT_ISSUE);
assertThat(remediation.baseEffort()).isEqualTo("5min");
}
示例2: load_rule_S110
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void load_rule_S110() throws Exception {
@Rule(key = "S110") class TestRule {
}
ruleMetadataLoader.addRulesByAnnotatedClass(newRepository, list(TestRule.class));
newRepository.done();
RulesDefinition.Repository repository = context.repository(RULE_REPOSITORY_KEY);
RulesDefinition.Rule rule = repository.rule("S110");
assertThat(rule).isNotNull();
DebtRemediationFunction remediation = rule.debtRemediationFunction();
assertThat(remediation).isNotNull();
assertThat(remediation.type()).isEqualTo(DebtRemediationFunction.Type.LINEAR_OFFSET);
assertThat(remediation.baseEffort()).isEqualTo("4h");
assertThat(remediation.gapMultiplier()).isEqualTo("30min");
assertThat(rule.gapDescription()).isEqualTo("Number of parents above the defined threshold");
}
示例3: load_rules_key_based
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void load_rules_key_based() throws Exception {
ruleMetadataLoader.addRulesByRuleKey(newRepository, list("S110", "S100"));
newRepository.done();
RulesDefinition.Repository repository = context.repository(RULE_REPOSITORY_KEY);
RulesDefinition.Rule ruleS110 = repository.rule("S110");
assertThat(ruleS110).isNotNull();
assertThat(ruleS110.name()).isEqualTo("Inheritance tree of classes should not be too deep");
assertThat(ruleS110.htmlDescription()).isEqualTo("<p>description S110</p>");
RulesDefinition.Rule ruleS100 = repository.rule("S100");
assertThat(ruleS100).isNotNull();
assertThat(ruleS100.name()).isEqualTo("Function names should comply with a naming convention");
assertThat(ruleS100.htmlDescription()).isEqualTo("<p>description S100</p>");
}
示例4: load_rule_S123
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void load_rule_S123() throws Exception {
@Rule(key = "S123")
class TestRule {
}
ruleMetadataLoader.addRulesByAnnotatedClass(newRepository, list(TestRule.class));
newRepository.done();
RulesDefinition.Repository repository = context.repository(RULE_REPOSITORY_KEY);
RulesDefinition.Rule rule = repository.rule("S123");
assertThat(rule).isNotNull();
DebtRemediationFunction remediation = rule.debtRemediationFunction();
assertThat(remediation).isNotNull();
assertThat(remediation.type()).isEqualTo(DebtRemediationFunction.Type.LINEAR);
assertThat(remediation.gapMultiplier()).isEqualTo("10min");
assertThat(rule.gapDescription()).isNull();
}
示例5: createRules
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
private static Rules createRules(StandaloneRuleDefinitionsLoader pluginRulesLoader) {
RulesBuilder builder = new RulesBuilder();
for (RulesDefinition.Repository repoDef : pluginRulesLoader.getContext().repositories()) {
for (org.sonar.api.server.rule.RulesDefinition.Rule ruleDef : repoDef.rules()) {
NewRule newRule = builder.add(RuleKey.of(ruleDef.repository().key(), ruleDef.key()))
.setInternalKey(ruleDef.internalKey())
.setDescription(ruleDef.htmlDescription() != null ? ruleDef.htmlDescription() : ruleDef.markdownDescription())
.setSeverity(ruleDef.severity())
.setType(ruleDef.type() != null ? ruleDef.type().toString() : null)
.setName(ruleDef.name());
for (Param p : ruleDef.params()) {
newRule.addParam(p.key())
.setDescription(p.description());
}
}
}
return builder.build();
}
示例6: create_isolated_classloader
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void create_isolated_classloader() {
PluginClassLoaderDef def = basePluginDef();
Map<PluginClassLoaderDef, ClassLoader> map = factory.create(asList(def));
assertThat(map).containsOnlyKeys(def);
ClassLoader classLoader = map.get(def);
// plugin can access to API classes, and of course to its own classes !
assertThat(canLoadClass(classLoader, RulesDefinition.class.getCanonicalName())).isTrue();
assertThat(canLoadClass(classLoader, BASE_PLUGIN_CLASSNAME)).isTrue();
// plugin can not access to core classes
assertThat(canLoadClass(classLoader, PluginClassloaderFactory.class.getCanonicalName())).isFalse();
assertThat(canLoadClass(classLoader, Test.class.getCanonicalName())).isFalse();
assertThat(canLoadClass(classLoader, StringUtils.class.getCanonicalName())).isFalse();
}
示例7: testDefineBasic
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void testDefineBasic() {
Languages languages = new Languages(testLanguage("java"));
CoverageRule rule = new CoverageRule(languages);
RulesDefinition.Context context = new Context();
assertTrue(context.repositories().isEmpty());
rule.define(context);
List<Repository> repos = context.repositories();
assertEquals(1, repos.size());
Repository repo = repos.get(0);
assertEquals("Coverage evolution", repo.name());
List<Rule> rules = repo.rules();
assertEquals(2, rules.size());
}
示例8: testExecute
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void testExecute() throws IOException {
Context t = new RulesDefinition.Context();
ScriptAnalyzerRulesDefinition def = new ScriptAnalyzerRulesDefinition();
def.define(t);
File baseFile = folder.newFile("test.ps1");
FileUtils.copyURLToFile(getClass().getResource("/testFiles/test.ps1"), baseFile);
DefaultFileSystem fs = new DefaultFileSystem(folder.getRoot());
DefaultInputFile ti = new DefaultInputFile("test", "test.ps1");
ti.initMetadata(new String(Files.readAllBytes(baseFile.toPath())));
fs.add(ti);
SensorContextTester ctxTester = SensorContextTester.create(folder.getRoot());
ScriptAnalyzerSensor s = new ScriptAnalyzerSensor(fs, temp);
s.execute(ctxTester);
Assert.assertEquals(4, ctxTester.allIssues().size());
}
示例9: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
MyCustomScssRulesDefinition rulesDefinition = new MyCustomScssRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository(REPOSITORY_KEY);
assertThat(repository.name()).isEqualTo(REPOSITORY_NAME);
assertThat(repository.language()).isEqualTo("scss");
assertThat(repository.rules()).hasSize(1);
RulesDefinition.Rule customRule = repository.rule(RULE_KEY);
assertThat(customRule).isNotNull();
assertThat(customRule.key()).isEqualTo(RULE_KEY);
assertThat(customRule.name()).isEqualTo(RULE_NAME);
RulesDefinition.Param param = repository.rules().get(0).params().get(0);
assertThat(param.key()).isEqualTo("customParam");
assertThat(param.description()).isEqualTo("Custom parameter");
assertThat(param.defaultValue()).isEqualTo("Default value");
}
示例10: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
MyCustomLessRulesDefinition rulesDefinition = new MyCustomLessRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository(REPOSITORY_KEY);
assertThat(repository.name()).isEqualTo(REPOSITORY_NAME);
assertThat(repository.language()).isEqualTo("less");
assertThat(repository.rules()).hasSize(1);
RulesDefinition.Rule customRule = repository.rule(RULE_KEY);
assertThat(customRule).isNotNull();
assertThat(customRule.key()).isEqualTo(RULE_KEY);
assertThat(customRule.name()).isEqualTo(RULE_NAME);
RulesDefinition.Param param = repository.rules().get(0).params().get(0);
assertThat(param.key()).isEqualTo("customParam");
assertThat(param.description()).isEqualTo("Custom parameter");
assertThat(param.defaultValue()).isEqualTo("Default value");
}
示例11: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
MyCustomCssRulesDefinition rulesDefinition = new MyCustomCssRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository(REPOSITORY_KEY);
assertThat(repository.name()).isEqualTo(REPOSITORY_NAME);
assertThat(repository.language()).isEqualTo("css");
assertThat(repository.rules()).hasSize(1);
RulesDefinition.Rule customRule = repository.rule(RULE_KEY);
assertThat(customRule).isNotNull();
assertThat(customRule.key()).isEqualTo(RULE_KEY);
assertThat(customRule.name()).isEqualTo(RULE_NAME);
RulesDefinition.Param param = repository.rules().get(0).params().get(0);
assertThat(param.key()).isEqualTo("customParam");
assertThat(param.description()).isEqualTo("Custom parameter");
assertThat(param.defaultValue()).isEqualTo("Default value");
}
示例12: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
CssRulesDefinition rulesDefinition = new CssRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository("css");
assertThat(repository.name()).isEqualTo("SonarQube");
assertThat(repository.language()).isEqualTo("css");
assertThat(repository.rules()).hasSize(88);
assertThat(CheckList.getEmbeddedCssChecks()).hasSize(repository.rules().size() - 6);
RulesDefinition.Rule todoRule = repository.rule(TodoTagCheck.class.getAnnotation(Rule.class).key());
assertThat(todoRule).isNotNull();
assertThat(todoRule.name()).isEqualTo(TodoTagCheck.class.getAnnotation(Rule.class).name());
}
示例13: testDefinition
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void testDefinition() {
final RulesDefinition.Context context = new RulesDefinition.Context();
new Rules().define(context);
final RulesDefinition.Repository repository = context.repository(Rules.REPOSITORY);
Assert.assertEquals("jDepend", repository.name());
Assert.assertEquals("java", repository.language());
Assert.assertEquals(7, repository.rules().size());
Assert.assertNotNull(repository.rule(NumberOfClassesAndInterfacesRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(AfferentCouplingsRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(EfferentCouplingsRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(AbstractnessRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(InstabilityRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(DistanceFromMainSequenceRule.RULE_KEY.rule()));
Assert.assertNotNull(repository.rule(PackageDependencyCyclesRule.RULE_KEY.rule()));
}
示例14: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
MyCssCustomRulesDefinition rulesDefinition = new MyCssCustomRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository("custom-css");
assertThat(repository.name()).isEqualTo("My CSS Custom Repository");
assertThat(repository.language()).isEqualTo("css");
assertThat(repository.rules()).hasSize(2);
RulesDefinition.Rule forbiddenPropertiesRule = repository.rule(ForbiddenPropertiesCheck.class.getAnnotation(Rule.class).key());
assertThat(forbiddenPropertiesRule).isNotNull();
assertThat(forbiddenPropertiesRule.name()).isEqualTo(ForbiddenPropertiesCheck.class.getAnnotation(Rule.class).name());
}
示例15: test
import org.sonar.api.server.rule.RulesDefinition; //导入依赖的package包/类
@Test
public void test() {
MyLessCustomRulesDefinition rulesDefinition = new MyLessCustomRulesDefinition();
RulesDefinition.Context context = new RulesDefinition.Context();
rulesDefinition.define(context);
RulesDefinition.Repository repository = context.repository("custom-less");
assertThat(repository.name()).isEqualTo("My Less Custom Repository");
assertThat(repository.language()).isEqualTo("less");
assertThat(repository.rules()).hasSize(1);
RulesDefinition.Rule interpolatedPropertiesRule = repository.rule(InterpolatedPropertiesCheck.class.getAnnotation(Rule.class).key());
assertThat(interpolatedPropertiesRule).isNotNull();
assertThat(interpolatedPropertiesRule.name()).isEqualTo(InterpolatedPropertiesCheck.class.getAnnotation(Rule.class).name());
}