return doActivate(dbSession, activation, context);
}
- public List<ActiveRuleChange> activate(DbSession dbSession, RuleActivation activation, QProfileName profileName) {
- RuleActivatorContext context = contextFactory.create(profileName, activation.getRuleKey(), dbSession);
- return doActivate(dbSession, activation, context);
- }
-
- List<ActiveRuleChange> activate(DbSession dbSession, RuleActivation activation, QualityProfileDto profileDto) {
+ public List<ActiveRuleChange> activate(DbSession dbSession, RuleActivation activation, QualityProfileDto profileDto) {
RuleActivatorContext context = contextFactory.create(profileDto, activation.getRuleKey(), dbSession);
return doActivate(dbSession, activation, context);
}
return create(ruleKey, session, context);
}
- RuleActivatorContext create(QProfileName profileName, RuleKey ruleKey, DbSession session) {
- RuleActivatorContext context = new RuleActivatorContext();
- QualityProfileDto profile = db.qualityProfileDao().selectByNameAndLanguage(profileName.getName(), profileName.getLanguage(), session);
- checkRequest(profile != null, "Quality profile not found: %s", profileName);
- context.setProfile(profile);
- return create(ruleKey, session, context);
- }
-
RuleActivatorContext create(QualityProfileDto profile, RuleKey ruleKey, DbSession session) {
return create(ruleKey, session, new RuleActivatorContext().setProfile(profile));
}
RuleActivation activation3 = new RuleActivation(blahRuleKey);
activation2.setSeverity(Severity.BLOCKER);
activation2.setParameter("max", "7");
- tester.get(RuleActivator.class).activate(dbSession, activation1, XOO_P1_NAME);
- tester.get(RuleActivator.class).activate(dbSession, activation2, XOO_P1_NAME);
- tester.get(RuleActivator.class).activate(dbSession, activation3, XOO_P1_NAME);
+ QualityProfileDto profileDto = get(XOO_P1_NAME);
+ tester.get(RuleActivator.class).activate(dbSession, activation1, profileDto);
+ tester.get(RuleActivator.class).activate(dbSession, activation2, profileDto);
+ tester.get(RuleActivator.class).activate(dbSession, activation3, profileDto);
dbSession.commit();
dbSession.clearCache();
activeRuleIndexer.index();
RuleActivation activation = new RuleActivation(XOO_X1);
activation.setSeverity(Severity.INFO);
activation.setParameter("max", "10");
- tester.get(RuleActivator.class).activate(dbSession, activation, XOO_P1_NAME);
+ QualityProfileDto profileDto = get(XOO_P1_NAME);
+ tester.get(RuleActivator.class).activate(dbSession, activation, profileDto);
activation = new RuleActivation(XOO_X2);
activation.setSeverity(Severity.INFO);
- tester.get(RuleActivator.class).activate(dbSession, activation, XOO_P1_NAME);
+ tester.get(RuleActivator.class).activate(dbSession, activation, profileDto);
dbSession.commit();
dbSession.clearCache();
activeRuleIndexer.index();
assertThat(profiles).hasSize(1);
assertThat(profiles.get(0).getName()).isEqualTo("P1");
}
+
+ private QualityProfileDto get(QProfileName profileName) {
+ return db.qualityProfileDao().selectByNameAndLanguage(profileName.getName(), profileName.getLanguage(), dbSession);
+ }
}
import org.sonar.db.rule.RuleParamDto;
import org.sonar.db.rule.RuleTesting;
import org.sonar.server.es.SearchOptions;
+import org.sonar.server.qualityprofile.QProfileName;
import org.sonar.server.qualityprofile.QProfileTesting;
import org.sonar.server.qualityprofile.RuleActivation;
import org.sonar.server.qualityprofile.RuleActivator;
// Activate the custom rule
RuleActivation activation = new RuleActivation(customRule.getKey()).setSeverity(Severity.BLOCKER);
- tester.get(RuleActivator.class).activate(dbSession, activation, QProfileTesting.XOO_P1_NAME);
+ tester.get(RuleActivator.class).activate(dbSession, activation, get(QProfileTesting.XOO_P1_NAME));
dbSession.commit();
dbSession.clearCache();
}
}
+ private QualityProfileDto get(QProfileName profileName) {
+ return db.qualityProfileDao().selectByNameAndLanguage(profileName.getName(), profileName.getLanguage(), dbSession);
+ }
+
private static Map<String, RuleParamDto> paramsByKey(List<RuleParamDto> params) {
return FluentIterable.from(params).uniqueIndex(RuleParamToKey.INSTANCE);
}