From d6a528219f0749ec48b7320807e894cfe965b0ba Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Thu, 29 May 2014 09:13:15 +0200 Subject: [PATCH] SONAR-5007 improve DAO API --- .../component/persistence/ComponentDao.java | 2 +- .../component/ws/ComponentAppAction.java | 2 +- .../java/org/sonar/server/db/BaseDao.java | 96 ++++++++++++------ .../main/java/org/sonar/server/db/Dao.java | 43 ++++++-- .../server/debt/DebtModelOperations.java | 2 +- .../duplication/ws/DuplicationsParser.java | 2 +- .../duplication/ws/DuplicationsWriter.java | 2 +- .../server/duplication/ws/ShowAction.java | 4 +- .../measure/persistence/MeasureDao.java | 2 +- .../QProfileActiveRuleOperations.java | 16 +-- .../server/qualityprofile/QProfileBackup.java | 2 +- .../qualityprofile/QProfileOperations.java | 4 +- .../RegisterQualityProfiles.java | 2 +- .../RuleActivationContextFactory.java | 8 +- .../server/qualityprofile/RuleActivator.java | 6 +- .../index/ActiveRuleNormalizer.java | 6 +- .../persistence/ActiveRuleDao.java | 99 ++++++++----------- .../org/sonar/server/rule/RegisterRules.java | 8 +- .../org/sonar/server/rule/RuleOperations.java | 2 +- .../org/sonar/server/rule/RuleUpdater.java | 2 +- .../org/sonar/server/rule/db/RuleDao.java | 45 +++++---- .../server/rule/index/RuleNormalizer.java | 4 +- .../sonar/server/source/SourceService.java | 2 +- .../sonar/server/test/CoverageService.java | 2 +- .../persistence/ComponentDaoTest.java | 6 +- .../component/ws/ComponentAppActionTest.java | 8 +- .../java/org/sonar/server/db/BaseDaoTest.java | 8 +- .../server/debt/DebtModelOperationsTest.java | 6 +- .../ws/DuplicationsParserTest.java | 6 +- .../ws/DuplicationsWriterTest.java | 6 +- .../server/duplication/ws/ShowActionTest.java | 8 +- .../measure/persistence/MeasureDaoTest.java | 6 +- .../qualityprofile/QProfileBackupTest.java | 8 +- .../RegisterQualityProfilesMediumTest.java | 8 +- .../RuleActivatorMediumTest.java | 24 ++--- .../index/ActiveRuleIndexMediumTest.java | 16 +-- .../persistence/ActiveRuleDaoTest.java | 2 +- .../ws/QProfilesWsMediumTest.java | 46 ++++----- .../sonar/server/rule/RegisterRulesTest.java | 18 ++-- .../sonar/server/rule/RuleDataMediumTest.java | 17 ++-- .../sonar/server/rule/RuleOperationsTest.java | 24 ++--- .../server/rule/RuleServiceMediumTest.java | 14 +-- .../server/rule/RuleUpdaterMediumTest.java | 19 ++-- .../org/sonar/server/rule/db/RuleDaoTest.java | 33 +++---- .../rule/index/RuleIndexMediumTest.java | 23 ++--- .../server/rule/ws/RulesWebServiceTest.java | 8 +- .../server/source/SourceServiceTest.java | 8 +- .../server/test/CoverageServiceTest.java | 20 ++-- 48 files changed, 370 insertions(+), 335 deletions(-) diff --git a/sonar-server/src/main/java/org/sonar/server/component/persistence/ComponentDao.java b/sonar-server/src/main/java/org/sonar/server/component/persistence/ComponentDao.java index a31949c88eb..6c59c2179c0 100644 --- a/sonar-server/src/main/java/org/sonar/server/component/persistence/ComponentDao.java +++ b/sonar-server/src/main/java/org/sonar/server/component/persistence/ComponentDao.java @@ -56,7 +56,7 @@ public class ComponentDao extends BaseDao } @Override - protected ComponentDto doGetByKey(DbSession session, String key) { + protected ComponentDto doGetNullableByKey(DbSession session, String key) { return getMapper(session).selectByKey(key); } diff --git a/sonar-server/src/main/java/org/sonar/server/component/ws/ComponentAppAction.java b/sonar-server/src/main/java/org/sonar/server/component/ws/ComponentAppAction.java index 9c98f790b6c..773c992ad00 100644 --- a/sonar-server/src/main/java/org/sonar/server/component/ws/ComponentAppAction.java +++ b/sonar-server/src/main/java/org/sonar/server/component/ws/ComponentAppAction.java @@ -105,7 +105,7 @@ public class ComponentAppAction implements RequestHandler { DbSession session = dbClient.openSession(false); try { - ComponentDto component = dbClient.componentDao().getByKey(session, fileKey); + ComponentDto component = dbClient.componentDao().getNullableByKey(session, fileKey); if (component == null) { throw new NotFoundException(String.format("Component '%s' does not exists.", fileKey)); } diff --git a/sonar-server/src/main/java/org/sonar/server/db/BaseDao.java b/sonar-server/src/main/java/org/sonar/server/db/BaseDao.java index 1f7148dbaf1..0c1f263f084 100644 --- a/sonar-server/src/main/java/org/sonar/server/db/BaseDao.java +++ b/sonar-server/src/main/java/org/sonar/server/db/BaseDao.java @@ -31,6 +31,7 @@ import org.sonar.server.search.action.EmbeddedIndexAction; import org.sonar.server.search.action.IndexAction; import org.sonar.server.search.action.KeyIndexAction; +import javax.annotation.CheckForNull; import javax.annotation.Nullable; import java.io.Serializable; import java.util.Collection; @@ -52,7 +53,7 @@ import java.util.Date; * - DTO is fully loaded (no field will return null) * - returns null (and not empty) * - examples: - * - RuleDto = ruleDao.getByKey(dto.getKey()); + * - RuleDto = ruleDao.getNullableByKey(dto.getKey()); *

* * FIND Methods * - returns a List of DTO. @@ -128,7 +129,8 @@ public abstract class BaseDao, K extends Serializable> imple return indexDefinition != null ? this.indexDefinition.getIndexType() : null; } - protected abstract E doGetByKey(DbSession session, K key); + @CheckForNull + protected abstract E doGetNullableByKey(DbSession session, K key); protected abstract E doInsert(DbSession session, E item); @@ -140,12 +142,12 @@ public abstract class BaseDao, K extends Serializable> imple return session.getMapper(mapperClass); } - public E getByKey(DbSession session, K key) { - return doGetByKey(session, key); + public E getNullableByKey(DbSession session, K key) { + return doGetNullableByKey(session, key); } - public E getNonNullByKey(DbSession session, K key) { - E value = doGetByKey(session, key); + public E getByKey(DbSession session, K key) { + E value = doGetNullableByKey(session, key); if (value == null) { throw new NotFoundException(String.format("Key '%s' not found", key)); } @@ -153,51 +155,83 @@ public abstract class BaseDao, K extends Serializable> imple } @Override - public void update(DbSession session, E... item) { - for(E _item:item) { - _item.setUpdatedAt(new Date(system2.now())); - doUpdate(session, _item); - if (hasIndex()) { - session.enqueue(new DtoIndexAction(getIndexType(), IndexAction.Method.UPSERT, _item)); - } + public E update(DbSession session, E item) { + Date now = new Date(system2.now()); + update(session, item, now); + return item; + } + + @Override + public E update(DbSession session, E item, E... others) { + Date now = new Date(system2.now()); + update(session, item, now); + for (E other : others) { + update(session, other, now); } + return item; } @Override public Collection update(DbSession session, Collection items) { - //TODO check for bulk inserts + Date now = new Date(system2.now()); for (E item : items) { - update(session, item); + update(session, item, now); } return items; } - @Override - public void insert(DbSession session, E... item) { - for(E _item:item) { - Date now = new Date(system2.now()); - _item.setCreatedAt(now); - _item.setUpdatedAt(now); - doInsert(session, _item); - if (hasIndex()) { - session.enqueue(new DtoIndexAction(this.getIndexType(), IndexAction.Method.UPSERT, _item)); - } + private void update(DbSession session, E item, Date now) { + item.setUpdatedAt(now); + doUpdate(session, item); + if (hasIndex()) { + session.enqueue(new DtoIndexAction(getIndexType(), IndexAction.Method.UPSERT, item)); } } + @Override + public E insert(DbSession session, E item) { + insert(session, item, new Date(system2.now())); + return item; + } + @Override public Collection insert(DbSession session, Collection items) { + Date now = new Date(system2.now()); for (E item : items) { - insert(session, item); + insert(session, item, now); } return items; } @Override - public void delete(DbSession session, E... item) { - for(E _item:item) { - Preconditions.checkNotNull(_item.getKey(), "Dto does not have a valid Key"); - deleteByKey(session, _item.getKey()); + public E insert(DbSession session, E item, E... others) { + Date now = new Date(system2.now()); + insert(session, item, now); + for (E other : others) { + insert(session, other, now); + } + return item; + } + + private void insert(DbSession session, E item, Date now) { + item.setCreatedAt(now); + item.setUpdatedAt(now); + doInsert(session, item); + if (hasIndex()) { + session.enqueue(new DtoIndexAction(getIndexType(), IndexAction.Method.UPSERT, item)); + } + } + + @Override + public void delete(DbSession session, E item) { + deleteByKey(session, item.getKey()); + } + + @Override + public void delete(DbSession session, E item, E... others) { + delete(session, item); + for (E e : others) { + delete(session, e); } } @@ -210,7 +244,7 @@ public abstract class BaseDao, K extends Serializable> imple @Override public void deleteByKey(DbSession session, K key) { - Preconditions.checkNotNull(key, "Cannot delete item with null key"); + Preconditions.checkNotNull(key, "Missing key"); doDeleteByKey(session, key); if (hasIndex()) { session.enqueue(new KeyIndexAction(getIndexType(), IndexAction.Method.DELETE, key)); diff --git a/sonar-server/src/main/java/org/sonar/server/db/Dao.java b/sonar-server/src/main/java/org/sonar/server/db/Dao.java index 01613949eb3..edf06bf13d0 100644 --- a/sonar-server/src/main/java/org/sonar/server/db/Dao.java +++ b/sonar-server/src/main/java/org/sonar/server/db/Dao.java @@ -29,22 +29,51 @@ import java.util.Collection; public interface Dao, K extends Serializable> extends ServerComponent { + /** + * Get a DTO by its key. Return null if the key does not exist. + */ @CheckForNull + E getNullableByKey(DbSession session, K key); + + /** + * Get a DTO by its key. + * + * @throws org.sonar.server.exceptions.NotFoundException if the key does not exist + */ E getByKey(DbSession session, K key); - E getNonNullByKey(DbSession session, K key); + /** + * Update a table row. DTO id must be set. The field updatedAt + * is changed by this method. + */ + E update(DbSession session, E dto); + + /** + * Update one or more table rows. Note that the returned DTO is only + * the first updated one. + */ + E update(DbSession session, E dto, E... others); + + Collection update(DbSession session, Collection dtos); - void update(DbSession session, E... item); + E insert(DbSession session, E dto); - Collection update(DbSession session, Collection items); + /** + * Insert one or more database rows. Note + * that the returned DTO is only the first inserted one. + */ + E insert(DbSession session, E dto, E... others); - void insert(DbSession session, E... item); + Collection insert(DbSession session, Collection dtos); - Collection insert(DbSession session, Collection items); + void delete(DbSession session, E dto); - void delete(DbSession session, E... item); + /** + * Delete one or more table rows. + */ + void delete(DbSession session, E dto, E... others); - void delete(DbSession session, Collection items); + void delete(DbSession session, Collection dtos); void deleteByKey(DbSession session, K key); diff --git a/sonar-server/src/main/java/org/sonar/server/debt/DebtModelOperations.java b/sonar-server/src/main/java/org/sonar/server/debt/DebtModelOperations.java index 1ac173a444d..5773eb9dcf4 100644 --- a/sonar-server/src/main/java/org/sonar/server/debt/DebtModelOperations.java +++ b/sonar-server/src/main/java/org/sonar/server/debt/DebtModelOperations.java @@ -214,7 +214,7 @@ public class DebtModelOperations implements ServerComponent { private void disableSubCharacteristic(CharacteristicDto subCharacteristic, Date updateDate, DbSession session) { // Disable debt on all rules (even REMOVED ones, in order to have no issue if they are reactivated) linked to the sub characteristic - disableRulesDebt(dbClient.ruleDao().findRulesByDebtSubCharacteristicId(subCharacteristic.getId(), session), subCharacteristic.getId(), updateDate, session); + disableRulesDebt(dbClient.ruleDao().findRulesByDebtSubCharacteristicId(session, subCharacteristic.getId()), subCharacteristic.getId(), updateDate, session); disableCharacteristic(subCharacteristic, updateDate, session); } diff --git a/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsParser.java b/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsParser.java index 0e148f06e23..ef74d034ed5 100644 --- a/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsParser.java +++ b/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsParser.java @@ -85,7 +85,7 @@ public class DuplicationsParser implements ServerComponent { private Duplication createDuplication(Map componentsByKey, String from, String size, String componentKey, DbSession session) { ComponentDto component = componentsByKey.get(componentKey); if (component == null) { - component = componentDao.getByKey(session, componentKey); + component = componentDao.getNullableByKey(session, componentKey); componentsByKey.put(componentKey, component); } return new Duplication(component, Integer.valueOf(from), Integer.valueOf(size)); diff --git a/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsWriter.java b/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsWriter.java index 4dc0580f50a..b3e8b8afe56 100644 --- a/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsWriter.java +++ b/sonar-server/src/main/java/org/sonar/server/duplication/ws/DuplicationsWriter.java @@ -82,7 +82,7 @@ public class DuplicationsWriter implements ServerComponent { for (Map.Entry entry : refByComponentKey.entrySet()) { String componentKey = entry.getKey(); String ref = entry.getValue(); - ComponentDto file = componentDao.getByKey(session, componentKey); + ComponentDto file = componentDao.getNullableByKey(session, componentKey); if (file != null) { json.name(ref).beginObject(); json.prop("key", file.key()); diff --git a/sonar-server/src/main/java/org/sonar/server/duplication/ws/ShowAction.java b/sonar-server/src/main/java/org/sonar/server/duplication/ws/ShowAction.java index 11aaaa4e221..3246bd19303 100644 --- a/sonar-server/src/main/java/org/sonar/server/duplication/ws/ShowAction.java +++ b/sonar-server/src/main/java/org/sonar/server/duplication/ws/ShowAction.java @@ -93,7 +93,7 @@ public class ShowAction implements RequestHandler { @CheckForNull private String findDataFromComponent(String fileKey, String metricKey, DbSession session) { - MeasureDto data = measureDao.getByKey(session, MeasureKey.of(fileKey, metricKey)); + MeasureDto data = measureDao.getNullableByKey(session, MeasureKey.of(fileKey, metricKey)); if (data != null) { return data.getData(); } @@ -101,7 +101,7 @@ public class ShowAction implements RequestHandler { } private ComponentDto findComponent(String key, DbSession session) { - ComponentDto componentDto = componentDao.getByKey(session, key); + ComponentDto componentDto = componentDao.getNullableByKey(session, key); if (componentDto == null) { throw new NotFoundException(String.format("Component with key '%s' not found", key)); } diff --git a/sonar-server/src/main/java/org/sonar/server/measure/persistence/MeasureDao.java b/sonar-server/src/main/java/org/sonar/server/measure/persistence/MeasureDao.java index 6761bfde776..d41f09d85ed 100644 --- a/sonar-server/src/main/java/org/sonar/server/measure/persistence/MeasureDao.java +++ b/sonar-server/src/main/java/org/sonar/server/measure/persistence/MeasureDao.java @@ -48,7 +48,7 @@ public class MeasureDao extends BaseDao i } @Override - protected MeasureDto doGetByKey(DbSession session, MeasureKey key) { + protected MeasureDto doGetNullableByKey(DbSession session, MeasureKey key) { return session.getMapper(MeasureMapper.class).selectByKey(key); } diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileActiveRuleOperations.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileActiveRuleOperations.java index 310139320c2..d22118dba52 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileActiveRuleOperations.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileActiveRuleOperations.java @@ -58,20 +58,20 @@ public class QProfileActiveRuleOperations implements ServerComponent { } ActiveRuleDto createActiveRule(QualityProfileKey profileKey, RuleKey ruleKey, String severity, DbSession session) { - RuleDto ruleDto = ruleDao.getByKey(session, ruleKey); + RuleDto ruleDto = ruleDao.getNullableByKey(session, ruleKey); QualityProfileDto profileDto = profileDao.selectByNameAndLanguage(profileKey.name(), profileKey.lang(), session); ActiveRuleDto activeRule = ActiveRuleDto.createFor(profileDto, ruleDto) .setSeverity(severity); activeRuleDao.insert(session, activeRule); - List ruleParams = ruleDao.findRuleParamsByRuleKey(ruleKey, session); + List ruleParams = ruleDao.findRuleParamsByRuleKey(session, ruleKey); List activeRuleParams = newArrayList(); for (RuleParamDto ruleParam : ruleParams) { ActiveRuleParamDto activeRuleParam = ActiveRuleParamDto.createFor(ruleParam) .setKey(ruleParam.getName()) .setValue(ruleParam.getDefaultValue()); activeRuleParams.add(activeRuleParam); - activeRuleDao.addParam(activeRule, activeRuleParam, session); + activeRuleDao.addParam(session, activeRule, activeRuleParam); } return activeRule; } @@ -82,7 +82,7 @@ public class QProfileActiveRuleOperations implements ServerComponent { validateParam(ruleParam, sanitizedValue); activeRuleParam.setValue(sanitizedValue); - activeRuleDao.updateParam(activeRule, activeRuleParam, session); + activeRuleDao.updateParam(session, activeRule, activeRuleParam); } @@ -98,8 +98,8 @@ public class QProfileActiveRuleOperations implements ServerComponent { private RuleParamDto findRuleParamNotNull(Integer ruleId, String key, DbSession session) { - RuleDto rule = ruleDao.getById(ruleId, session); - RuleParamDto ruleParam = ruleDao.getRuleParamByRuleAndParamKey(rule, key, session); + RuleDto rule = ruleDao.getById(session, ruleId); + RuleParamDto ruleParam = ruleDao.getRuleParamByRuleAndParamKey(session, rule, key); if (ruleParam == null) { throw new IllegalArgumentException("No rule param found"); } @@ -108,8 +108,8 @@ public class QProfileActiveRuleOperations implements ServerComponent { @CheckForNull private ActiveRuleParamDto findActiveRuleParam(int activeRuleId, String key, DbSession session) { - ActiveRuleDto activeRule = activeRuleDao.getById(activeRuleId, session); - return activeRuleDao.getParamsByActiveRuleAndKey(activeRule, key, session); + ActiveRuleDto activeRule = activeRuleDao.getById(session, activeRuleId); + return activeRuleDao.getParamsByActiveRuleAndKey(session, activeRule, key); } private ActiveRuleParamDto findActiveRuleParamNotNull(int activeRuleId, String key, DbSession session) { diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileBackup.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileBackup.java index 19ee185da57..8a19ddda3ea 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileBackup.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileBackup.java @@ -178,7 +178,7 @@ public class QProfileBackup implements ServerComponent { public void restoreFromActiveRules(QualityProfileKey profileKey, RulesProfile rulesProfile, DbSession session) { for (org.sonar.api.rules.ActiveRule activeRule : rulesProfile.getActiveRules()) { RuleKey ruleKey = RuleKey.of(activeRule.getRepositoryKey(), activeRule.getRuleKey()); - RuleDto rule = ruleDao.getByKey(session, ruleKey); + RuleDto rule = ruleDao.getNullableByKey(session, ruleKey); if (rule == null) { throw new NotFoundException(String.format("Rule '%s' does not exists.", ruleKey)); } diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileOperations.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileOperations.java index c0e2c97195a..5109c3e9f0c 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileOperations.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/QProfileOperations.java @@ -145,8 +145,8 @@ public class QProfileOperations implements ServerComponent { * Delete profile without checking permission or that profile is existing or that profile can be deleted (is not defined as default, has no children, etc.) */ public void deleteProfile(QProfile profile, DbSession session) { - activeRuleDao.removeParamByProfile(profile, session); - activeRuleDao.deleteByProfile(profile, session); + activeRuleDao.removeParamByProfile(session, profile); + activeRuleDao.deleteByProfile(session, profile); dao.delete(profile.id(), session); propertiesDao.deleteProjectProperties(PROFILE_PROPERTY_PREFIX + profile.language(), profile.name(), session); //esActiveRule.deleteActiveRulesFromProfile(profile.id()); diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RegisterQualityProfiles.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RegisterQualityProfiles.java index 99ac78de14d..1344623830a 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RegisterQualityProfiles.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RegisterQualityProfiles.java @@ -150,7 +150,7 @@ public class RegisterQualityProfiles implements ServerComponent { } private void cleanUp(QualityProfileKey key, QualityProfileDto profileDto, DbSession session) { - dbClient.activeRuleDao().deleteByProfileKey(key, session); + dbClient.activeRuleDao().deleteByProfileKey(session, key); dbClient.qualityProfileDao().delete(session, profileDto); session.commit(); } diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivationContextFactory.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivationContextFactory.java index 424e2741459..e3d5e99dbb7 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivationContextFactory.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivationContextFactory.java @@ -63,7 +63,7 @@ public class RuleActivationContextFactory implements ServerComponent { } private RuleDto initRule(RuleKey ruleKey, RuleActivationContext context, DbSession dbSession) { - RuleDto rule = db.ruleDao().getByKey(dbSession, ruleKey); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, ruleKey); if (rule == null) { throw new IllegalArgumentException("Rule not found: " + ruleKey); } @@ -74,7 +74,7 @@ public class RuleActivationContextFactory implements ServerComponent { throw new IllegalArgumentException("A rule template can't be activated on a Quality profile: " + ruleKey); } context.setRule(rule); - context.setRuleParams(db.ruleDao().findRuleParamsByRuleKey(rule.getKey(), dbSession)); + context.setRuleParams(db.ruleDao().findRuleParamsByRuleKey(dbSession, rule.getKey())); return rule; } @@ -93,10 +93,10 @@ public class RuleActivationContextFactory implements ServerComponent { } private void initActiveRules(ActiveRuleKey key, RuleActivationContext context, DbSession session, boolean parent) { - ActiveRuleDto activeRule = db.activeRuleDao().getByKey(session, key); + ActiveRuleDto activeRule = db.activeRuleDao().getNullableByKey(session, key); Collection activeRuleParams = null; if (activeRule != null) { - activeRuleParams = db.activeRuleDao().findParamsByActiveRule(activeRule, session); + activeRuleParams = db.activeRuleDao().findParamsByActiveRule(session, activeRule); } if (parent) { context.setParentActiveRule(activeRule); diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivator.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivator.java index e3935e857ce..81e47da36c6 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivator.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/RuleActivator.java @@ -128,7 +128,7 @@ public class RuleActivator implements ServerComponent { for (Map.Entry param : change.getParameters().entrySet()) { ActiveRuleParamDto paramDto = ActiveRuleParamDto.createFor(context.ruleParamsByKeys().get(param.getKey())); paramDto.setValue(param.getValue()); - dao.addParam(activeRule, paramDto, dbSession); + dao.addParam(dbSession, activeRule, paramDto); } } else if (change.getType() == ActiveRuleChange.Type.DEACTIVATED) { @@ -145,10 +145,10 @@ public class RuleActivator implements ServerComponent { // did not exist activeRuleParamDto = ActiveRuleParamDto.createFor(context.ruleParamsByKeys().get(param.getKey())); activeRuleParamDto.setValue(param.getValue()); - dao.addParam(activeRule, activeRuleParamDto, dbSession); + dao.addParam(dbSession, activeRule, activeRuleParamDto); } else { activeRuleParamDto.setValue(param.getValue()); - dao.updateParam(activeRule, activeRuleParamDto, dbSession); + dao.updateParam(dbSession, activeRule, activeRuleParamDto); } } for (ActiveRuleParamDto activeRuleParamDto : context.activeRuleParams()) { diff --git a/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java b/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java index c433b83afd7..ab7f57c14d2 100644 --- a/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleNormalizer.java @@ -103,8 +103,8 @@ public class ActiveRuleNormalizer extends BaseNormalizer requests = new ArrayList(); try { - requests.addAll(normalize(db.activeRuleDao().getByKey(dbSession, key))); - for (ActiveRuleParamDto param : db.activeRuleDao().findParamsByKey(key, dbSession)) { + requests.addAll(normalize(db.activeRuleDao().getNullableByKey(dbSession, key))); + for (ActiveRuleParamDto param : db.activeRuleDao().findParamsByKey(dbSession, key)) { requests.addAll(this.normalize(param, key)); } } finally { @@ -149,7 +149,7 @@ public class ActiveRuleNormalizer extends BaseNormalizer findByRule(RuleDto rule, DbSession dbSession) { - Preconditions.checkArgument(rule.getId() != null, "Rule is not persisted"); + public List findByRule(DbSession dbSession, RuleDto rule) { + Preconditions.checkNotNull(rule.getId(), "Rule is not persisted"); return mapper(dbSession).selectByRuleId(rule.getId()); } @@ -136,10 +139,10 @@ public class ActiveRuleDao extends BaseDao findByProfileKey(QualityProfileKey profileKey, DbSession session) { + public List findByProfileKey(DbSession session, QualityProfileKey profileKey) { return mapper(session).selectByProfileKey(profileKey); } - public void removeParamByProfileKey(QualityProfileKey profileKey, DbSession session) { - int id = this.getQualityProfileId(profileKey, session); + public void removeParamByProfileKey(DbSession session, QualityProfileKey profileKey) { + int id = this.getQualityProfileId(session, profileKey); mapper(session).deleteParametersFromProfile(id); } @Deprecated //TODO Needed until SQL rewrite with KEY fields. - private int getQualityProfileId(QualityProfileKey profileKey, DbSession session) { + private int getQualityProfileId(DbSession session, QualityProfileKey profileKey) { return profileDao.selectByNameAndLanguage(profileKey.name(), profileKey.lang(), session).getId(); } @@ -210,32 +197,32 @@ public class ActiveRuleDao extends BaseDao findParamsByKey(ActiveRuleKey key, DbSession session) { - Preconditions.checkArgument(key != null, "ActiveRuleKey cannot be null"); - ActiveRuleDto activeRule = this.getByKey(session, key); + public List findParamsByKey(DbSession session, ActiveRuleKey key) { + Preconditions.checkNotNull(key, "ActiveRuleKey cannot be null"); + ActiveRuleDto activeRule = getNullableByKey(session, key); return mapper(session).selectParamsByActiveRuleId(activeRule.getId()); } public ActiveRuleParamDto getParamsByKeyAndName(ActiveRuleKey key, String name, DbSession session) { - Preconditions.checkArgument(key != null, "ActiveRuleKey cannot be null"); - Preconditions.checkArgument(name != null, "ParameterName cannot be null"); - ActiveRuleDto activeRule = this.getByKey(session, key); + Preconditions.checkNotNull(key, "ActiveRuleKey cannot be null"); + Preconditions.checkNotNull(name, "ParameterName cannot be null"); + ActiveRuleDto activeRule = getNullableByKey(session, key); return mapper(session).selectParamByActiveRuleAndKey(activeRule.getId(), name); } - public List findParamsByActiveRule(ActiveRuleDto dto, DbSession session) { - Preconditions.checkArgument(dto.getId() != null, "ActiveRule is not persisted"); + public List findParamsByActiveRule(DbSession session, ActiveRuleDto dto) { + Preconditions.checkNotNull(dto.getId(), "ActiveRule is not persisted"); return mapper(session).selectParamsByActiveRuleId(dto.getId()); } @Deprecated - public void removeParamByProfile(QProfile profile, DbSession session) { + public void removeParamByProfile(DbSession session, QProfile profile) { mapper(session).deleteParametersFromProfile(profile.id()); } @Deprecated - public void deleteByProfile(QProfile profile, DbSession session) { + public void deleteByProfile(DbSession session, QProfile profile) { mapper(session).deleteFromProfile(profile.id()); } } diff --git a/sonar-server/src/main/java/org/sonar/server/rule/RegisterRules.java b/sonar-server/src/main/java/org/sonar/server/rule/RegisterRules.java index dd24c66df5f..436759e135c 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/RegisterRules.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/RegisterRules.java @@ -268,7 +268,7 @@ public class RegisterRules implements Startable { } private void mergeParams(RulesDefinition.Rule ruleDef, RuleDto rule, DbSession session) { - List paramDtos = dbClient.ruleDao().findRuleParamsByRuleKey(rule.getKey(), session); + List paramDtos = dbClient.ruleDao().findRuleParamsByRuleKey(session, rule.getKey()); List existingParamDtoNames = new ArrayList(); for (RuleParamDto paramDto : paramDtos) { @@ -276,12 +276,12 @@ public class RegisterRules implements Startable { if (paramDef == null) { //TODO cascade on the activeRule upon RuleDeletion //activeRuleDao.removeRuleParam(paramDto, sqlSession); - dbClient.ruleDao().removeRuleParam(rule, paramDto, session); + dbClient.ruleDao().removeRuleParam(session, rule, paramDto); } else { // TODO validate that existing active rules still match constraints // TODO store param name if (mergeParam(paramDto, paramDef)) { - dbClient.ruleDao().updateRuleParam(rule, paramDto, session); + dbClient.ruleDao().updateRuleParam(session, rule, paramDto); } else { // TODO to be replaced by synchronizer session.enqueue(new EmbeddedIndexAction(IndexDefinition.RULE.getIndexType(), @@ -297,7 +297,7 @@ public class RegisterRules implements Startable { .setDescription(param.description()) .setDefaultValue(param.defaultValue()) .setType(param.type().toString()); - dbClient.ruleDao().addRuleParam(rule, paramDto, session); + dbClient.ruleDao().addRuleParam(session, rule, paramDto); } } } diff --git a/sonar-server/src/main/java/org/sonar/server/rule/RuleOperations.java b/sonar-server/src/main/java/org/sonar/server/rule/RuleOperations.java index 2bf1f24a743..72ef0af1d8e 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/RuleOperations.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/RuleOperations.java @@ -66,7 +66,7 @@ public class RuleOperations implements ServerComponent { checkPermission(userSession); DbSession session = dbClient.openSession(false); try { - RuleDto ruleDto = dbClient.ruleDao().getByKey(session, ruleChange.ruleKey()); + RuleDto ruleDto = dbClient.ruleDao().getNullableByKey(session, ruleChange.ruleKey()); if (ruleDto == null) { throw new NotFoundException(String.format("Unknown rule '%s'", ruleChange.ruleKey())); } diff --git a/sonar-server/src/main/java/org/sonar/server/rule/RuleUpdater.java b/sonar-server/src/main/java/org/sonar/server/rule/RuleUpdater.java index 7ad0780dc67..de5a9b3ded1 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/RuleUpdater.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/RuleUpdater.java @@ -75,7 +75,7 @@ public class RuleUpdater implements ServerComponent { DbSession dbSession = dbClient.openSession(false); try { Context context = new Context(); - context.rule = dbClient.ruleDao().getNonNullByKey(dbSession, change.getRuleKey()); + context.rule = dbClient.ruleDao().getByKey(dbSession, change.getRuleKey()); if (RuleStatus.REMOVED == context.rule.getStatus()) { throw new IllegalArgumentException("Rule with REMOVED status cannot be updated: " + change.getRuleKey()); } diff --git a/sonar-server/src/main/java/org/sonar/server/rule/db/RuleDao.java b/sonar-server/src/main/java/org/sonar/server/rule/db/RuleDao.java index 12605c979c6..dbae7bcfcda 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/db/RuleDao.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/db/RuleDao.java @@ -51,9 +51,8 @@ public class RuleDao extends BaseDao { super(IndexDefinition.RULE, RuleMapper.class, system); } - @CheckForNull @Override - public RuleDto doGetByKey(DbSession session, RuleKey key) { + public RuleDto doGetNullableByKey(DbSession session, RuleKey key) { return mapper(session).selectByKey(key); } @@ -79,11 +78,11 @@ public class RuleDao extends BaseDao { } /** - * @deprecated in 4.4. Use keys. + * @deprecated use keys. */ @CheckForNull @Deprecated - public RuleDto getById(int id, DbSession session) { + public RuleDto getById(DbSession session, int id) { return mapper(session).selectById(id); } @@ -126,26 +125,26 @@ public class RuleDao extends BaseDao { * Nested DTO RuleParams */ - public void addRuleParam(RuleDto rule, RuleParamDto ruleParam, DbSession session) { + public void addRuleParam(DbSession session, RuleDto rule, RuleParamDto param) { Preconditions.checkNotNull(rule.getId(), "Rule id must be set"); - ruleParam.setRuleId(rule.getId()); - mapper(session).insertParameter(ruleParam); - this.enqueueInsert(ruleParam, rule.getKey(), session); + param.setRuleId(rule.getId()); + mapper(session).insertParameter(param); + this.enqueueInsert(param, rule.getKey(), session); } - public RuleParamDto updateRuleParam(RuleDto rule, RuleParamDto ruleParam, DbSession session) { + public RuleParamDto updateRuleParam(DbSession session, RuleDto rule, RuleParamDto param) { Preconditions.checkNotNull(rule.getId(), "Rule id must be set"); - Preconditions.checkNotNull(ruleParam.getId(), "Param is not yet persisted must be set"); - ruleParam.setRuleId(rule.getId()); - mapper(session).updateParameter(ruleParam); - this.enqueueUpdate(ruleParam, rule.getKey(), session); - return ruleParam; + Preconditions.checkNotNull(param.getId(), "Param is not yet persisted must be set"); + param.setRuleId(rule.getId()); + mapper(session).updateParameter(param); + this.enqueueUpdate(param, rule.getKey(), session); + return param; } - public void removeRuleParam(RuleDto rule, RuleParamDto ruleParam, DbSession session) { - Preconditions.checkNotNull(ruleParam.getId(), "Param is not persisted"); - mapper(session).deleteParameter(ruleParam.getId()); - this.enqueueDelete(ruleParam, rule.getKey(), session); + public void removeRuleParam(DbSession session, RuleDto rule, RuleParamDto param) { + Preconditions.checkNotNull(param.getId(), "Param is not persisted"); + mapper(session).deleteParameter(param.getId()); + this.enqueueDelete(param, rule.getKey(), session); } /** @@ -156,24 +155,24 @@ public class RuleDao extends BaseDao { return mapper(session).selectAllParams(); } - public List findRuleParamsByRuleKey(RuleKey key, DbSession session) { + public List findRuleParamsByRuleKey(DbSession session, RuleKey key) { return mapper(session).selectParamsByRuleKey(key); } - public List findRuleParamsByRules(List ruleDtos, DbSession session) { + public List findRuleParamsByRules(DbSession session, List ruleDtos) { List ruleParamDtos = new ArrayList(); for (RuleDto rule : ruleDtos) { - ruleParamDtos.addAll(findRuleParamsByRuleKey(rule.getKey(), session)); + ruleParamDtos.addAll(findRuleParamsByRuleKey(session, rule.getKey())); } return ruleParamDtos; } - public RuleParamDto getRuleParamByRuleAndParamKey(RuleDto rule, String key, DbSession session) { + public RuleParamDto getRuleParamByRuleAndParamKey(DbSession session, RuleDto rule, String key) { Preconditions.checkNotNull(rule.getId(), "Rule is not persisted"); return mapper(session).selectParamByRuleAndKey(rule.getId(), key); } - public List findRulesByDebtSubCharacteristicId(int id, DbSession session) { + public List findRulesByDebtSubCharacteristicId(DbSession session, int id) { return mapper(session).selectBySubCharacteristicId(id); } diff --git a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java index 17c9ab059c5..28ebcdf3c02 100644 --- a/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java +++ b/sonar-server/src/main/java/org/sonar/server/rule/index/RuleNormalizer.java @@ -135,8 +135,8 @@ public class RuleNormalizer extends BaseNormalizer { DbSession dbSession = db.openSession(false); List requests = new ArrayList(); try { - requests.addAll(normalize(db.ruleDao().getByKey(dbSession, key))); - for (RuleParamDto param : db.ruleDao().findRuleParamsByRuleKey(key, dbSession)) { + requests.addAll(normalize(db.ruleDao().getNullableByKey(dbSession, key))); + for (RuleParamDto param : db.ruleDao().findRuleParamsByRuleKey(dbSession, key)) { requests.addAll(normalize(param, key)); } } finally { diff --git a/sonar-server/src/main/java/org/sonar/server/source/SourceService.java b/sonar-server/src/main/java/org/sonar/server/source/SourceService.java index f967f30bf9a..bac4b336445 100644 --- a/sonar-server/src/main/java/org/sonar/server/source/SourceService.java +++ b/sonar-server/src/main/java/org/sonar/server/source/SourceService.java @@ -98,7 +98,7 @@ public class SourceService implements ServerComponent { private String findDataFromComponent(String fileKey, String metricKey) { DbSession session = dbClient.openSession(false); try { - MeasureDto data = dbClient.measureDao().getByKey(session, MeasureKey.of(fileKey, metricKey)); + MeasureDto data = dbClient.measureDao().getNullableByKey(session, MeasureKey.of(fileKey, metricKey)); if (data != null) { return data.getData(); } diff --git a/sonar-server/src/main/java/org/sonar/server/test/CoverageService.java b/sonar-server/src/main/java/org/sonar/server/test/CoverageService.java index c619af64562..a1c30dff0dc 100644 --- a/sonar-server/src/main/java/org/sonar/server/test/CoverageService.java +++ b/sonar-server/src/main/java/org/sonar/server/test/CoverageService.java @@ -109,7 +109,7 @@ public class CoverageService implements ServerComponent { private Map findDataFromComponent(String fileKey, String metricKey) { DbSession session = myBatis.openSession(false); try { - MeasureDto data = measureDao.getByKey(session, MeasureKey.of(fileKey, metricKey)); + MeasureDto data = measureDao.getNullableByKey(session, MeasureKey.of(fileKey, metricKey)); if (data != null) { return KeyValueFormat.parseIntInt(data.getData()); } diff --git a/sonar-server/src/test/java/org/sonar/server/component/persistence/ComponentDaoTest.java b/sonar-server/src/test/java/org/sonar/server/component/persistence/ComponentDaoTest.java index 78c2c3859f8..2e8f075c82b 100644 --- a/sonar-server/src/test/java/org/sonar/server/component/persistence/ComponentDaoTest.java +++ b/sonar-server/src/test/java/org/sonar/server/component/persistence/ComponentDaoTest.java @@ -49,7 +49,7 @@ public class ComponentDaoTest extends AbstractDaoTestCase { public void get_by_key() { setupData("shared"); - ComponentDto result = dao.getByKey(session, "org.struts:struts-core:src/org/struts/RequestContext.java"); + ComponentDto result = dao.getNullableByKey(session, "org.struts:struts-core:src/org/struts/RequestContext.java"); assertThat(result).isNotNull(); assertThat(result.key()).isEqualTo("org.struts:struts-core:src/org/struts/RequestContext.java"); assertThat(result.path()).isEqualTo("src/org/struts/RequestContext.java"); @@ -59,14 +59,14 @@ public class ComponentDaoTest extends AbstractDaoTestCase { assertThat(result.subProjectId()).isEqualTo(2); assertThat(result.projectId()).isEqualTo(1); - assertThat(dao.getByKey(session, "unknown")).isNull(); + assertThat(dao.getNullableByKey(session, "unknown")).isNull(); } @Test public void get_by_key_on_a_root_project() { setupData("shared"); - ComponentDto result = dao.getByKey(session, "org.struts:struts"); + ComponentDto result = dao.getNullableByKey(session, "org.struts:struts"); assertThat(result).isNotNull(); assertThat(result.key()).isEqualTo("org.struts:struts"); assertThat(result.path()).isNull(); diff --git a/sonar-server/src/test/java/org/sonar/server/component/ws/ComponentAppActionTest.java b/sonar-server/src/test/java/org/sonar/server/component/ws/ComponentAppActionTest.java index 95b212cd99a..a8536c06dda 100644 --- a/sonar-server/src/test/java/org/sonar/server/component/ws/ComponentAppActionTest.java +++ b/sonar-server/src/test/java/org/sonar/server/component/ws/ComponentAppActionTest.java @@ -124,7 +124,7 @@ public class ComponentAppActionTest { ComponentDto file = new ComponentDto().setId(10L).setQualifier("FIL").setKey(COMPONENT_KEY).setName("Plugin.java") .setPath("src/main/java/org/sonar/api/Plugin.java").setSubProjectId(5L).setProjectId(1L); - when(componentDao.getByKey(session, COMPONENT_KEY)).thenReturn(file); + when(componentDao.getNullableByKey(session, COMPONENT_KEY)).thenReturn(file); when(componentDao.getById(5L, session)).thenReturn(new ComponentDto().setId(5L).setLongName("SonarQube :: Plugin API")); when(componentDao.getById(1L, session)).thenReturn(new ComponentDto().setId(1L).setLongName("SonarQube")); when(propertiesDao.selectByQuery(any(PropertyQuery.class), eq(session))).thenReturn(newArrayList(new PropertyDto())); @@ -140,7 +140,7 @@ public class ComponentAppActionTest { MockUserSession.set().setLogin("john").addComponentPermission(UserRole.CODEVIEWER, componentKey, componentKey); ComponentDto file = new ComponentDto().setId(1L).setQualifier("TRK").setKey(componentKey).setName("SonarQube").setProjectId(1L); - when(componentDao.getByKey(session, componentKey)).thenReturn(file); + when(componentDao.getNullableByKey(session, componentKey)).thenReturn(file); when(componentDao.getById(1L, session)).thenReturn(new ComponentDto().setId(1L).setLongName("SonarQube")); when(propertiesDao.selectByQuery(any(PropertyQuery.class), eq(session))).thenReturn(newArrayList(new PropertyDto())); @@ -154,7 +154,7 @@ public class ComponentAppActionTest { ComponentDto file = new ComponentDto().setId(10L).setQualifier("FIL").setKey(COMPONENT_KEY).setName("Plugin.java") .setPath("src/main/java/org/sonar/api/Plugin.java").setSubProjectId(1L).setProjectId(1L); - when(componentDao.getByKey(session, COMPONENT_KEY)).thenReturn(file); + when(componentDao.getNullableByKey(session, COMPONENT_KEY)).thenReturn(file); when(componentDao.getById(1L, session)).thenReturn(new ComponentDto().setId(1L).setLongName("SonarQube")); when(propertiesDao.selectByQuery(any(PropertyQuery.class), eq(session))).thenReturn(newArrayList(new PropertyDto())); when(sourceService.hasScmData(eq(COMPONENT_KEY), eq(session))).thenReturn(true); @@ -232,7 +232,7 @@ public class ComponentAppActionTest { private void addProjectSample() { ComponentDto file = new ComponentDto().setId(10L).setQualifier("FIL").setKey(COMPONENT_KEY).setName("Plugin.java") .setPath("src/main/java/org/sonar/api/Plugin.java").setSubProjectId(5L).setProjectId(1L); - when(componentDao.getByKey(session, COMPONENT_KEY)).thenReturn(file); + when(componentDao.getNullableByKey(session, COMPONENT_KEY)).thenReturn(file); when(componentDao.getById(5L, session)).thenReturn(new ComponentDto().setId(5L).setLongName("SonarQube :: Plugin API")); when(componentDao.getById(1L, session)).thenReturn(new ComponentDto().setId(1L).setLongName("SonarQube")); } diff --git a/sonar-server/src/test/java/org/sonar/server/db/BaseDaoTest.java b/sonar-server/src/test/java/org/sonar/server/db/BaseDaoTest.java index fc83c7a0b95..faa5f05035f 100644 --- a/sonar-server/src/test/java/org/sonar/server/db/BaseDaoTest.java +++ b/sonar-server/src/test/java/org/sonar/server/db/BaseDaoTest.java @@ -39,13 +39,13 @@ public class BaseDaoTest { public void getNonNullByKey() throws Exception { BaseDao dao = mock(BaseDao.class); FakeDto dto = new FakeDto("ki"); - when(dao.doGetByKey(dbSession, "ki")).thenReturn(dto); - when(dao.getNonNullByKey(any(DbSession.class), anyString())).thenCallRealMethod(); + when(dao.doGetNullableByKey(dbSession, "ki")).thenReturn(dto); + when(dao.getByKey(any(DbSession.class), anyString())).thenCallRealMethod(); - assertThat(dao.getNonNullByKey(dbSession, "ki")).isSameAs(dto); + assertThat(dao.getByKey(dbSession, "ki")).isSameAs(dto); try { - dao.getNonNullByKey(dbSession, "unknown"); + dao.getByKey(dbSession, "unknown"); fail(); } catch (NotFoundException e) { assertThat(e).hasMessage("Key 'unknown' not found"); diff --git a/sonar-server/src/test/java/org/sonar/server/debt/DebtModelOperationsTest.java b/sonar-server/src/test/java/org/sonar/server/debt/DebtModelOperationsTest.java index 83ddb9f8dcb..f141537f4e6 100644 --- a/sonar-server/src/test/java/org/sonar/server/debt/DebtModelOperationsTest.java +++ b/sonar-server/src/test/java/org/sonar/server/debt/DebtModelOperationsTest.java @@ -357,7 +357,7 @@ public class DebtModelOperationsTest { DbSession batchSession = mock(DbSession.class); when(dbClient.openSession(true)).thenReturn(batchSession); - when(ruleDao.findRulesByDebtSubCharacteristicId(2, batchSession)).thenReturn(newArrayList( + when(ruleDao.findRulesByDebtSubCharacteristicId(batchSession, 2)).thenReturn(newArrayList( new RuleDto() .setSubCharacteristicId(2) .setRemediationFunction(DebtRemediationFunction.Type.LINEAR_OFFSET.toString()) @@ -402,7 +402,7 @@ public class DebtModelOperationsTest { DbSession batchSession = mock(DbSession.class); when(dbClient.openSession(true)).thenReturn(batchSession); - when(ruleDao.findRulesByDebtSubCharacteristicId(2, batchSession)).thenReturn(newArrayList( + when(ruleDao.findRulesByDebtSubCharacteristicId(batchSession, 2)).thenReturn(newArrayList( new RuleDto() .setSubCharacteristicId(10).setRemediationFunction("LINEAR_OFFSET").setRemediationCoefficient("2h").setRemediationOffset("5min") .setDefaultSubCharacteristicId(2).setDefaultRemediationFunction("LINEAR_OFFSET").setDefaultRemediationCoefficient("4h").setDefaultRemediationOffset("15min") @@ -440,7 +440,7 @@ public class DebtModelOperationsTest { DbSession batchSession = mock(DbSession.class); when(dbClient.openSession(true)).thenReturn(batchSession); - when(ruleDao.findRulesByDebtSubCharacteristicId(subCharacteristicDto.getId(), batchSession)).thenReturn(newArrayList( + when(ruleDao.findRulesByDebtSubCharacteristicId(batchSession, subCharacteristicDto.getId())).thenReturn(newArrayList( new RuleDto().setSubCharacteristicId(subCharacteristicDto.getId()) .setRemediationFunction(DebtRemediationFunction.Type.LINEAR_OFFSET.toString()) .setRemediationCoefficient("2h") diff --git a/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsParserTest.java b/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsParserTest.java index eedc87d007c..edc35fc1bcc 100644 --- a/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsParserTest.java +++ b/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsParserTest.java @@ -59,17 +59,17 @@ public class DuplicationsParserTest { // Current file String key1 = "org.codehaus.sonar:sonar-plugin-api:src/main/java/org/sonar/api/utils/command/CommandExecutor.java"; currentFile = new ComponentDto().setId(10L).setQualifier("FIL").setKey(key1).setLongName("CommandExecutor").setProjectId(1L); - when(componentDao.getByKey(session, key1)).thenReturn(currentFile); + when(componentDao.getNullableByKey(session, key1)).thenReturn(currentFile); // File on same project String key2 = "org.codehaus.sonar:sonar-plugin-api:src/main/java/com/sonar/orchestrator/util/CommandExecutor.java"; fileOnSameProject = new ComponentDto().setId(11L).setQualifier("FIL").setKey(key2).setLongName("CommandExecutor").setProjectId(1L); - when(componentDao.getByKey(session, key2)).thenReturn(fileOnSameProject); + when(componentDao.getNullableByKey(session, key2)).thenReturn(fileOnSameProject); // File on different project String key3 = "com.sonarsource.orchestrator:sonar-orchestrator:src/main/java/com/sonar/orchestrator/util/CommandExecutor.java"; fileOnDifferentProject = new ComponentDto().setId(12L).setQualifier("FIL").setKey(key3).setLongName("CommandExecutor").setProjectId(2L); - when(componentDao.getByKey(session, key3)).thenReturn(fileOnDifferentProject); + when(componentDao.getNullableByKey(session, key3)).thenReturn(fileOnDifferentProject); parser = new DuplicationsParser(componentDao); } diff --git a/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsWriterTest.java b/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsWriterTest.java index 088d4bc8236..832af19d7d1 100644 --- a/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsWriterTest.java +++ b/sonar-server/src/test/java/org/sonar/server/duplication/ws/DuplicationsWriterTest.java @@ -65,8 +65,8 @@ public class DuplicationsWriterTest { String key2 = "org.codehaus.sonar:sonar-ws-client:src/main/java/org/sonar/wsclient/services/PropertyUpdateQuery.java"; ComponentDto file2 = new ComponentDto().setId(11L).setQualifier("FIL").setKey(key2).setLongName("PropertyUpdateQuery").setProjectId(1L); - when(componentDao.getByKey(session, key1)).thenReturn(file1); - when(componentDao.getByKey(session, key2)).thenReturn(file2); + when(componentDao.getNullableByKey(session, key1)).thenReturn(file1); + when(componentDao.getNullableByKey(session, key2)).thenReturn(file2); when(componentDao.getById(1L, session)).thenReturn(new ComponentDto().setId(1L).setLongName("SonarQube")); List blocks = newArrayList(); @@ -104,7 +104,7 @@ public class DuplicationsWriterTest { "}" ); - verify(componentDao, times(2)).getByKey(eq(session), anyString()); + verify(componentDao, times(2)).getNullableByKey(eq(session), anyString()); verify(componentDao, times(1)).getById(anyLong(), eq(session)); } diff --git a/sonar-server/src/test/java/org/sonar/server/duplication/ws/ShowActionTest.java b/sonar-server/src/test/java/org/sonar/server/duplication/ws/ShowActionTest.java index b8ed6f73b78..361d4d1f2ec 100644 --- a/sonar-server/src/test/java/org/sonar/server/duplication/ws/ShowActionTest.java +++ b/sonar-server/src/test/java/org/sonar/server/duplication/ws/ShowActionTest.java @@ -83,11 +83,11 @@ public class ShowActionTest { MockUserSession.set().addComponentPermission(UserRole.CODEVIEWER, "org.codehaus.sonar:sonar", componentKey); ComponentDto componentDto = new ComponentDto().setId(10L); - when(componentDao.getByKey(session, componentKey)).thenReturn(componentDto); + when(componentDao.getNullableByKey(session, componentKey)).thenReturn(componentDto); String data = "{duplications}"; MeasureKey measureKey = MeasureKey.of(componentKey, CoreMetrics.DUPLICATIONS_DATA_KEY); - when(measureDao.getByKey(session, measureKey)).thenReturn( + when(measureDao.getNullableByKey(session, measureKey)).thenReturn( MeasureDto.createFor(measureKey).setTextValue("{duplications}") ); @@ -106,10 +106,10 @@ public class ShowActionTest { MockUserSession.set().addComponentPermission(UserRole.CODEVIEWER, "org.codehaus.sonar:sonar", componentKey); ComponentDto componentDto = new ComponentDto().setId(10L); - when(componentDao.getByKey(session, componentKey)).thenReturn(componentDto); + when(componentDao.getNullableByKey(session, componentKey)).thenReturn(componentDto); MeasureKey measureKey = MeasureKey.of(componentKey, CoreMetrics.DUPLICATIONS_DATA_KEY); - when(measureDao.getByKey(session, measureKey)).thenReturn(null); + when(measureDao.getNullableByKey(session, measureKey)).thenReturn(null); WsTester.TestRequest request = tester.newGetRequest("api/duplications", "show").setParam("key", componentKey); request.execute(); diff --git a/sonar-server/src/test/java/org/sonar/server/measure/persistence/MeasureDaoTest.java b/sonar-server/src/test/java/org/sonar/server/measure/persistence/MeasureDaoTest.java index bbed377b4d2..63e5f745ef6 100644 --- a/sonar-server/src/test/java/org/sonar/server/measure/persistence/MeasureDaoTest.java +++ b/sonar-server/src/test/java/org/sonar/server/measure/persistence/MeasureDaoTest.java @@ -54,7 +54,7 @@ public class MeasureDaoTest extends AbstractDaoTestCase { public void get_value_by_key() throws Exception { setupData("shared"); - MeasureDto result = dao.getByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "ncloc")); + MeasureDto result = dao.getNullableByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "ncloc")); assertThat(result.getId()).isEqualTo(22); assertThat(result.getValue()).isEqualTo(10d); } @@ -63,7 +63,7 @@ public class MeasureDaoTest extends AbstractDaoTestCase { public void get_data_by_key() throws Exception { setupData("shared"); - MeasureDto result = dao.getByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "authors_by_line")); + MeasureDto result = dao.getNullableByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "authors_by_line")); assertThat(result.getId()).isEqualTo(20); assertThat(result.getData()).isEqualTo("0123456789012345678901234567890123456789"); } @@ -72,7 +72,7 @@ public class MeasureDaoTest extends AbstractDaoTestCase { public void get_text_value_by_key() throws Exception { setupData("shared"); - MeasureDto result = dao.getByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "coverage_line_hits_data")); + MeasureDto result = dao.getNullableByKey(session, MeasureKey.of("org.struts:struts-core:src/org/struts/RequestContext.java", "coverage_line_hits_data")); assertThat(result.getId()).isEqualTo(21); assertThat(result.getData()).isEqualTo("36=1;37=1;38=1;39=1;43=1;48=1;53=1"); } diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/QProfileBackupTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/QProfileBackupTest.java index 7ccb5399e09..5e9effdcab6 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/QProfileBackupTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/QProfileBackupTest.java @@ -316,7 +316,7 @@ public class QProfileBackupTest { when(profileDefinition.createProfile(any(ValidationMessages.class))).thenReturn(profile); definitions.add(profileDefinition); - when(ruleDao.getByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(new RuleDto().setId(10).setSeverity("INFO")); + when(ruleDao.getNullableByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(new RuleDto().setId(10).setSeverity("INFO")); when(qProfileOperations.newProfile(eq(name), eq(language), eq(true), any(UserSession.class), eq(session))).thenReturn(new QProfile().setId(1)); @@ -346,8 +346,8 @@ public class QProfileBackupTest { when(profileDefinition2.createProfile(any(ValidationMessages.class))).thenReturn(profile2); definitions.add(profileDefinition2); - when(ruleDao.getByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(new RuleDto().setId(10).setSeverity("INFO")); - when(ruleDao.getByKey(session, RuleKey.of("checkstyle", "rule"))).thenReturn(new RuleDto().setId(11).setSeverity("INFO")); + when(ruleDao.getNullableByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(new RuleDto().setId(10).setSeverity("INFO")); + when(ruleDao.getNullableByKey(session, RuleKey.of("checkstyle", "rule"))).thenReturn(new RuleDto().setId(11).setSeverity("INFO")); when(qProfileOperations.newProfile(eq("Default"), eq("java"), eq(true), any(UserSession.class), eq(session))).thenReturn(new QProfile().setId(1)); @@ -378,7 +378,7 @@ public class QProfileBackupTest { when(profileDefinition.createProfile(any(ValidationMessages.class))).thenReturn(profile); definitions.add(profileDefinition); - when(ruleDao.getByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(null); + when(ruleDao.getNullableByKey(session, RuleKey.of("pmd", "rule"))).thenReturn(null); when(qProfileOperations.newProfile(eq(name), eq(language), eq(true), any(UserSession.class), eq(session))).thenReturn(new QProfile().setId(1)); diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/RegisterQualityProfilesMediumTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/RegisterQualityProfilesMediumTest.java index b0616a9beea..4607de0a36e 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/RegisterQualityProfilesMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/RegisterQualityProfilesMediumTest.java @@ -81,7 +81,7 @@ public class RegisterQualityProfilesMediumTest { // Check ActiveRules in DB ActiveRuleDao activeRuleDao = dbClient().activeRuleDao(); - assertThat(activeRuleDao.findByProfileKey(qualityProfileKey, dbSession)).hasSize(2); + assertThat(activeRuleDao.findByProfileKey(dbSession, qualityProfileKey)).hasSize(2); RuleKey ruleKey = RuleKey.of("xoo", "x1"); ActiveRuleKey activeRuleKey = ActiveRuleKey.of(qualityProfileKey, ruleKey); @@ -126,16 +126,16 @@ public class RegisterQualityProfilesMediumTest { // Check ActiveRules in DB ActiveRuleDao activeRuleDao = dbClient().activeRuleDao(); - assertThat(activeRuleDao.findByProfileKey(qualityProfileKey, dbSession)).hasSize(2); + assertThat(activeRuleDao.findByProfileKey(dbSession, qualityProfileKey)).hasSize(2); RuleKey ruleKey = RuleKey.of("xoo", "x1"); - ActiveRuleDto activeRule = activeRuleDao.getByKey(dbSession, ActiveRuleKey.of(qualityProfileKey, ruleKey)); + ActiveRuleDto activeRule = activeRuleDao.getNullableByKey(dbSession, ActiveRuleKey.of(qualityProfileKey, ruleKey)); assertThat(activeRule.getKey().qProfile()).isEqualTo(qualityProfileKey); assertThat(activeRule.getKey().ruleKey()).isEqualTo(ruleKey); assertThat(activeRule.getSeverityString()).isEqualTo(Severity.CRITICAL); // Check ActiveRuleParameters in DB - Map params = ActiveRuleParamDto.groupByKey(activeRuleDao.findParamsByActiveRule(activeRule, dbSession)); + Map params = ActiveRuleParamDto.groupByKey(activeRuleDao.findParamsByActiveRule(dbSession, activeRule)); assertThat(params).hasSize(2); // set by profile assertThat(params.get("acceptWhitespace").getValue()).isEqualTo("true"); diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/RuleActivatorMediumTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/RuleActivatorMediumTest.java index 8594b7c2816..bb32256ca03 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/RuleActivatorMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/RuleActivatorMediumTest.java @@ -81,11 +81,11 @@ public class RuleActivatorMediumTest { ruleActivator.activate(activation); // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(PROFILE_KEY, dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, PROFILE_KEY); assertThat(activeRuleDtos).hasSize(1); assertThat(activeRuleDtos.get(0).getSeverityString()).isEqualTo(Severity.BLOCKER); assertThat(activeRuleDtos.get(0).getInheritance()).isNull(); - List params = db.activeRuleDao().findParamsByActiveRule(activeRuleDtos.get(0), dbSession); + List params = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRuleDtos.get(0)); assertThat(params).hasSize(1); assertThat(params.get(0).getValue()).isEqualTo("7"); @@ -106,11 +106,11 @@ public class RuleActivatorMediumTest { ruleActivator.activate(activation); // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(PROFILE_KEY, dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, PROFILE_KEY); assertThat(activeRuleDtos).hasSize(1); assertThat(activeRuleDtos.get(0).getSeverityString()).isEqualTo(Severity.MINOR); assertThat(activeRuleDtos.get(0).getInheritance()).isNull(); - List params = db.activeRuleDao().findParamsByActiveRule(activeRuleDtos.get(0), dbSession); + List params = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRuleDtos.get(0)); assertThat(params).hasSize(1); assertThat(params.get(0).getValue()).isEqualTo("10"); @@ -139,11 +139,11 @@ public class RuleActivatorMediumTest { ruleActivator.activate(update); // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(PROFILE_KEY, dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, PROFILE_KEY); assertThat(activeRuleDtos).hasSize(1); assertThat(activeRuleDtos.get(0).getSeverityString()).isEqualTo(Severity.CRITICAL); assertThat(activeRuleDtos.get(0).getInheritance()).isNull(); - List params = db.activeRuleDao().findParamsByActiveRule(activeRuleDtos.get(0), dbSession); + List params = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRuleDtos.get(0)); assertThat(params).hasSize(1); assertThat(params.get(0).getValue()).isEqualTo("42"); @@ -168,7 +168,7 @@ public class RuleActivatorMediumTest { assertThat(db.activeRuleDao().getParamsByKeyAndName(activeRuleKey, "max", dbSession)).isNotNull(); - db.activeRuleDao().removeParamByKeyAndName(activeRuleKey, "max", dbSession); + db.activeRuleDao().removeParamByKeyAndName(dbSession, activeRuleKey, "max"); dbSession.commit(); assertThat(db.activeRuleDao().getParamsByKeyAndName(activeRuleKey, "max", dbSession)).isNull(); @@ -181,11 +181,11 @@ public class RuleActivatorMediumTest { ruleActivator.activate(update); // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(PROFILE_KEY, dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, PROFILE_KEY); assertThat(activeRuleDtos).hasSize(1); assertThat(activeRuleDtos.get(0).getSeverityString()).isEqualTo(Severity.CRITICAL); assertThat(activeRuleDtos.get(0).getInheritance()).isNull(); - List params = db.activeRuleDao().findParamsByActiveRule(activeRuleDtos.get(0), dbSession); + List params = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRuleDtos.get(0)); assertThat(params).hasSize(1); assertThat(params.get(0).getValue()).isEqualTo("42"); @@ -213,11 +213,11 @@ public class RuleActivatorMediumTest { ruleActivator.activate(update); // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(PROFILE_KEY, dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, PROFILE_KEY); assertThat(activeRuleDtos).hasSize(1); assertThat(activeRuleDtos.get(0).getSeverityString()).isEqualTo(Severity.MINOR); assertThat(activeRuleDtos.get(0).getInheritance()).isNull(); - List params = db.activeRuleDao().findParamsByActiveRule(activeRuleDtos.get(0), dbSession); + List params = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRuleDtos.get(0)); assertThat(params).hasSize(1); assertThat(params.get(0).getValue()).isEqualTo("10"); @@ -400,7 +400,7 @@ public class RuleActivatorMediumTest { private void verifyZeroActiveRules(ActiveRuleKey key) { // verify db - List activeRuleDtos = db.activeRuleDao().findByProfileKey(key.qProfile(), dbSession); + List activeRuleDtos = db.activeRuleDao().findByProfileKey(dbSession, key.qProfile()); assertThat(activeRuleDtos).isEmpty(); //TODO test params diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/index/ActiveRuleIndexMediumTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/index/ActiveRuleIndexMediumTest.java index c2c2fa7dbdc..ffe5fba3b7a 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/index/ActiveRuleIndexMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/index/ActiveRuleIndexMediumTest.java @@ -80,7 +80,7 @@ public class ActiveRuleIndexMediumTest { dbSession.commit(); // verify db - List persistedDtos = db.activeRuleDao().findByRule(ruleDto, dbSession); + List persistedDtos = db.activeRuleDao().findByRule(dbSession, ruleDto); assertThat(persistedDtos).hasSize(1); // verify es @@ -104,12 +104,12 @@ public class ActiveRuleIndexMediumTest { RuleParamDto minParam = new RuleParamDto() .setName("min") .setType("STRING"); - db.ruleDao().addRuleParam(ruleDto, minParam, dbSession); + db.ruleDao().addRuleParam(dbSession, ruleDto, minParam); RuleParamDto maxParam = new RuleParamDto() .setName("max") .setType("STRING"); - db.ruleDao().addRuleParam(ruleDto, maxParam, dbSession); + db.ruleDao().addRuleParam(dbSession, ruleDto, maxParam); ActiveRuleDto activeRule = ActiveRuleDto.createFor(profileDto, ruleDto) .setInheritance(ActiveRule.Inheritance.INHERIT.name()) @@ -118,16 +118,16 @@ public class ActiveRuleIndexMediumTest { ActiveRuleParamDto activeRuleMinParam = ActiveRuleParamDto.createFor(minParam) .setValue("minimum"); - db.activeRuleDao().addParam(activeRule, activeRuleMinParam, dbSession); + db.activeRuleDao().addParam(dbSession, activeRule, activeRuleMinParam); ActiveRuleParamDto activeRuleMaxParam = ActiveRuleParamDto.createFor(maxParam) .setValue("maximum"); - db.activeRuleDao().addParam(activeRule, activeRuleMaxParam, dbSession); + db.activeRuleDao().addParam(dbSession, activeRule, activeRuleMaxParam); dbSession.commit(); // verify db - List persistedDtos = db.activeRuleDao().findParamsByActiveRule(activeRule, dbSession); + List persistedDtos = db.activeRuleDao().findParamsByActiveRule(dbSession, activeRule); assertThat(persistedDtos).hasSize(2); // verify es @@ -158,8 +158,8 @@ public class ActiveRuleIndexMediumTest { // in db dbSession.clearCache(); - assertThat(db.activeRuleDao().findByRule(rule1, dbSession)).hasSize(1); - assertThat(db.activeRuleDao().findByRule(rule2, dbSession)).hasSize(2); + assertThat(db.activeRuleDao().findByRule(dbSession, rule1)).hasSize(1); + assertThat(db.activeRuleDao().findByRule(dbSession, rule2)).hasSize(2); // in es List activeRules = index.findByRule(RuleKey.of("java", "r1")); diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDaoTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDaoTest.java index cbc0f8d646c..9ae215485b7 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDaoTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/persistence/ActiveRuleDaoTest.java @@ -71,7 +71,7 @@ public class ActiveRuleDaoTest extends AbstractDaoTestCase{ session.commit(); - ActiveRuleDto result = activeRuleDao.getByKey(session, activeRuleDto.getKey()); + ActiveRuleDto result = activeRuleDao.getNullableByKey(session, activeRuleDto.getKey()); assertThat(result).isNotNull(); assertThat(result.getKey()).isNotNull(); diff --git a/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsMediumTest.java b/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsMediumTest.java index 3085bc1c701..a5cf73465f9 100644 --- a/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsMediumTest.java @@ -103,7 +103,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(1); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(1); // 1. Deactivate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_RULE_DEACTIVATE_METHOD); @@ -113,7 +113,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); } @Test @@ -130,7 +130,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(4); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(4); // 1. Deactivate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_DEACTIVATE_METHOD); @@ -139,7 +139,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); } @Test @@ -155,7 +155,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(2); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(2); // 1. Deactivate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_DEACTIVATE_METHOD); @@ -164,8 +164,8 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(0); - assertThat(db.activeRuleDao().findByProfileKey(php.getKey(), session)).hasSize(2); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(0); + assertThat(db.activeRuleDao().findByProfileKey(session, php.getKey())).hasSize(2); } @Test @@ -178,7 +178,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(2); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(2); // 1. Deactivate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_DEACTIVATE_METHOD); @@ -188,7 +188,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(1); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(1); } @Test @@ -198,7 +198,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); // 1. Activate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_RULE_ACTIVATE_METHOD); @@ -208,7 +208,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(1); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(1); } @Test @@ -218,7 +218,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); try { // 1. Activate Rule @@ -240,7 +240,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); // 1. Activate Rule @@ -254,7 +254,7 @@ public class QProfilesWsMediumTest { // 2. Assert ActiveRule in DAO ActiveRuleKey activeRuleKey = ActiveRuleKey.of(profile.getKey(), rule.getKey()); - assertThat(db.activeRuleDao().getByKey(session,activeRuleKey).getSeverityString()) + assertThat(db.activeRuleDao().getNullableByKey(session, activeRuleKey).getSeverityString()) .isEqualTo("MINOR"); } @@ -268,7 +268,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); // 1. Activate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_ACTIVATE_METHOD); @@ -278,7 +278,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(4); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(4); } @Test @@ -290,7 +290,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); // 1. Activate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_ACTIVATE_METHOD); @@ -303,7 +303,7 @@ public class QProfilesWsMediumTest { result.assertJson("{\"ignored\":[{\"key\":\"blah:toto\"}],\"activated\":[{\"key\":\"blah:tata\"}]}"); // 3. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(1); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(1); } @Test @@ -317,7 +317,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(php.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, php.getKey())).isEmpty(); // 1. Activate Rule WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_ACTIVATE_METHOD); @@ -327,7 +327,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(php.getKey(), session)).hasSize(2); + assertThat(db.activeRuleDao().findByProfileKey(session, php.getKey())).hasSize(2); } @Test @@ -340,7 +340,7 @@ public class QProfilesWsMediumTest { session.commit(); // 0. Assert No Active Rule for profile - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).isEmpty(); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).isEmpty(); // 1. Activate Rule with query returning 0 hits WsTester.TestRequest request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_ACTIVATE_METHOD); @@ -350,7 +350,7 @@ public class QProfilesWsMediumTest { session.clearCache(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(0); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(0); // 1. Activate Rule with query returning 1 hits request = wsTester.newGetRequest(API_ENDPOINT, API_BULK_RULE_ACTIVATE_METHOD); @@ -360,7 +360,7 @@ public class QProfilesWsMediumTest { session.commit(); // 2. Assert ActiveRule in DAO - assertThat(db.activeRuleDao().findByProfileKey(profile.getKey(), session)).hasSize(1); + assertThat(db.activeRuleDao().findByProfileKey(session, profile.getKey())).hasSize(1); } private QualityProfileDto getProfile(String lang) { diff --git a/sonar-server/src/test/java/org/sonar/server/rule/RegisterRulesTest.java b/sonar-server/src/test/java/org/sonar/server/rule/RegisterRulesTest.java index bd248dc94df..fbfd77d8289 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/RegisterRulesTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/RegisterRulesTest.java @@ -81,7 +81,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { // verify db assertThat(dbClient.ruleDao().findAll(dbSession)).hasSize(2); RuleKey ruleKey1 = RuleKey.of("fake", "rule1"); - RuleDto rule1 = dbClient.ruleDao().getByKey(dbSession, ruleKey1); + RuleDto rule1 = dbClient.ruleDao().getNullableByKey(dbSession, ruleKey1); assertThat(rule1.getName()).isEqualTo("One"); assertThat(rule1.getDescription()).isEqualTo("Description of One"); assertThat(rule1.getSeverityString()).isEqualTo(Severity.BLOCKER); @@ -94,7 +94,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { assertThat(rule1.getEffortToFixDescription()).isEqualTo("squid.S115.effortToFix"); // TODO check characteristic and remediation function - List params = dbClient.ruleDao().findRuleParamsByRuleKey(ruleKey1, dbSession); + List params = dbClient.ruleDao().findRuleParamsByRuleKey(dbSession, ruleKey1); assertThat(params).hasSize(2); RuleParamDto param = getParam(params, "param1"); assertThat(param.getDescription()).isEqualTo("parameter one"); @@ -110,7 +110,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { execute(new FakeRepositoryV1()); RuleKey ruleKey1 = RuleKey.of("fake", "rule1"); - RuleDto rule1 = dbClient.ruleDao().getByKey(dbSession, ruleKey1); + RuleDto rule1 = dbClient.ruleDao().getNullableByKey(dbSession, ruleKey1); assertThat(rule1.getCreatedAt()).isEqualTo(DATE1); assertThat(rule1.getUpdatedAt()).isEqualTo(DATE1); } @@ -122,7 +122,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { // user adds tags and sets markdown note RuleKey ruleKey1 = RuleKey.of("fake", "rule1"); - RuleDto rule1 = dbClient.ruleDao().getByKey(dbSession, ruleKey1); + RuleDto rule1 = dbClient.ruleDao().getNullableByKey(dbSession, ruleKey1); rule1.setTags(Sets.newHashSet("usertag1", "usertag2")); rule1.setNoteData("user *note*"); rule1.setNoteUserLogin("marius"); @@ -133,7 +133,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { execute(new FakeRepositoryV2()); // rule1 has been updated - rule1 = dbClient.ruleDao().getByKey(dbSession, ruleKey1); + rule1 = dbClient.ruleDao().getNullableByKey(dbSession, ruleKey1); assertThat(rule1.getName()).isEqualTo("One v2"); assertThat(rule1.getDescription()).isEqualTo("Description of One v2"); assertThat(rule1.getSeverityString()).isEqualTo(Severity.INFO); @@ -147,19 +147,19 @@ public class RegisterRulesTest extends AbstractDaoTestCase { assertThat(rule1.getUpdatedAt()).isEqualTo(DATE2); assertThat(rule1.getEffortToFixDescription()).isEqualTo("squid.S115.effortToFix.v2"); // TODO check characteristic and remediation function - List params = dbClient.ruleDao().findRuleParamsByRuleKey(ruleKey1, dbSession); + List params = dbClient.ruleDao().findRuleParamsByRuleKey(dbSession, ruleKey1); assertThat(params).hasSize(2); RuleParamDto param = getParam(params, "param1"); assertThat(param.getDescription()).isEqualTo("parameter one v2"); assertThat(param.getDefaultValue()).isEqualTo("default1 v2"); // rule2 has been removed -> status set to REMOVED but db row is not deleted - RuleDto rule2 = dbClient.ruleDao().getByKey(dbSession, RuleKey.of("fake", "rule2")); + RuleDto rule2 = dbClient.ruleDao().getNullableByKey(dbSession, RuleKey.of("fake", "rule2")); assertThat(rule2.getStatus()).isEqualTo(RuleStatus.REMOVED); assertThat(rule2.getUpdatedAt()).isEqualTo(DATE2); // rule3 has been created - RuleDto rule3 = dbClient.ruleDao().getByKey(dbSession, RuleKey.of("fake", "rule3")); + RuleDto rule3 = dbClient.ruleDao().getNullableByKey(dbSession, RuleKey.of("fake", "rule3")); assertThat(rule3).isNotNull(); assertThat(rule3.getStatus()).isEqualTo(RuleStatus.READY); } @@ -176,7 +176,7 @@ public class RegisterRulesTest extends AbstractDaoTestCase { when(system.now()).thenReturn(DATE3.getTime()); execute(new FakeRepositoryV2()); // -> rule2 is still removed, but not update at DATE3 - RuleDto rule2 = dbClient.ruleDao().getByKey(dbSession, RuleKey.of("fake", "rule2")); + RuleDto rule2 = dbClient.ruleDao().getNullableByKey(dbSession, RuleKey.of("fake", "rule2")); assertThat(rule2.getStatus()).isEqualTo(RuleStatus.REMOVED); assertThat(rule2.getUpdatedAt()).isEqualTo(DATE2); } diff --git a/sonar-server/src/test/java/org/sonar/server/rule/RuleDataMediumTest.java b/sonar-server/src/test/java/org/sonar/server/rule/RuleDataMediumTest.java index 0388be8c216..1b72c910f77 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/RuleDataMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/RuleDataMediumTest.java @@ -80,7 +80,7 @@ public class RuleDataMediumTest { dbSession.commit(); // verify that rule is persisted in db - RuleDto persistedDto = dao.getByKey(dbSession, ruleKey); + RuleDto persistedDto = dao.getNullableByKey(dbSession, ruleKey); assertThat(persistedDto).isNotNull(); assertThat(persistedDto.getId()).isGreaterThanOrEqualTo(0); assertThat(persistedDto.getRuleKey()).isEqualTo(ruleKey.rule()); @@ -91,7 +91,6 @@ public class RuleDataMediumTest { assertThat(persistedDto.getUpdatedAt()).isNotNull(); // verify that rule is indexed in es - Rule hit = index.getByKey(ruleKey); assertThat(hit).isNotNull(); assertThat(hit.key().repository()).isEqualTo(ruleKey.repository()); @@ -122,22 +121,22 @@ public class RuleDataMediumTest { .setType(RuleParamType.INTEGER.type()) .setDefaultValue("2") .setDescription("Minimum"); - dao.addRuleParam(ruleDto, minParamDto, dbSession); + dao.addRuleParam(dbSession, ruleDto, minParamDto); RuleParamDto maxParamDto = new RuleParamDto() .setName("max") .setType(RuleParamType.INTEGER.type()) .setDefaultValue("10") .setDescription("Maximum"); - dao.addRuleParam(ruleDto, maxParamDto, dbSession); + dao.addRuleParam(dbSession, ruleDto, maxParamDto); dbSession.commit(); //Verify that RuleDto has date from insertion - RuleDto theRule = dao.getByKey(dbSession, ruleKey); + RuleDto theRule = dao.getNullableByKey(dbSession, ruleKey); assertThat(theRule.getCreatedAt()).isNotNull(); assertThat(theRule.getUpdatedAt()).isNotNull(); // verify that parameters are persisted in db - List persistedDtos = dao.findRuleParamsByRuleKey(theRule.getKey(), dbSession); + List persistedDtos = dao.findRuleParamsByRuleKey(dbSession, theRule.getKey()); assertThat(persistedDtos).hasSize(2); // verify that parameters are indexed in es @@ -198,14 +197,14 @@ public class RuleDataMediumTest { .setType(RuleParamType.INTEGER.type()) .setDefaultValue("2") .setDescription("Minimum"); - dao.addRuleParam(ruleDto, minParamDto, dbSession); + dao.addRuleParam(dbSession, ruleDto, minParamDto); RuleParamDto maxParamDto = new RuleParamDto() .setName("max") .setType(RuleParamType.INTEGER.type()) .setDefaultValue("10") .setDescription("Maximum"); - dao.addRuleParam(ruleDto, maxParamDto, dbSession); + dao.addRuleParam(dbSession, ruleDto, maxParamDto); dbSession.commit(); // verify that parameters are indexed in es @@ -223,7 +222,7 @@ public class RuleDataMediumTest { minParamDto .setDefaultValue("0.5") .setDescription("new description"); - dao.updateRuleParam(ruleDto, minParamDto, dbSession); + dao.updateRuleParam(dbSession, ruleDto, minParamDto); dbSession.commit(); // verify that parameters are updated in es diff --git a/sonar-server/src/test/java/org/sonar/server/rule/RuleOperationsTest.java b/sonar-server/src/test/java/org/sonar/server/rule/RuleOperationsTest.java index f995bf91ffe..f7b8b8070ac 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/RuleOperationsTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/RuleOperationsTest.java @@ -82,7 +82,7 @@ public class RuleOperationsTest { .setSubCharacteristicId(6).setRemediationFunction("CONSTANT_ISSUE").setRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -117,7 +117,7 @@ public class RuleOperationsTest { .setDefaultSubCharacteristicId(2).setDefaultRemediationFunction("CONSTANT_ISSUE").setDefaultRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -150,7 +150,7 @@ public class RuleOperationsTest { .setSubCharacteristicId(2).setRemediationFunction("CONSTANT_ISSUE").setRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -171,7 +171,7 @@ public class RuleOperationsTest { .setDefaultSubCharacteristicId(2).setDefaultRemediationFunction("CONSTANT_ISSUE").setDefaultRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -204,7 +204,7 @@ public class RuleOperationsTest { .setDefaultSubCharacteristicId(6).setDefaultRemediationFunction("CONSTANT_ISSUE").setDefaultRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -240,7 +240,7 @@ public class RuleOperationsTest { .setRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); operations.updateRule(new RuleChange().setRuleKey(ruleKey).setDebtCharacteristicKey(null), authorizedUserSession); @@ -262,7 +262,7 @@ public class RuleOperationsTest { .setDefaultSubCharacteristicId(6).setDefaultRemediationFunction("CONSTANT_ISSUE").setDefaultRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); @@ -289,7 +289,7 @@ public class RuleOperationsTest { RuleDto dto = new RuleDto().setId(1).setRepositoryKey("squid").setRuleKey("UselessImportCheck"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); operations.updateRule(new RuleChange().setRuleKey(ruleKey).setDebtCharacteristicKey(null), authorizedUserSession); @@ -310,7 +310,7 @@ public class RuleOperationsTest { RuleDto dto = new RuleDto().setId(1).setRepositoryKey("squid").setRuleKey("UselessImportCheck").setSubCharacteristicId(-1); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); operations.updateRule( new RuleChange().setRuleKey(ruleKey).setDebtCharacteristicKey(null), @@ -325,7 +325,7 @@ public class RuleOperationsTest { public void fail_to_update_rule_on_unknown_rule() throws Exception { RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(null); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(null); try { operations.updateRule( @@ -347,7 +347,7 @@ public class RuleOperationsTest { .setSubCharacteristicId(2).setRemediationFunction("CONSTANT_ISSUE").setRemediationOffset("10min"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(null); @@ -371,7 +371,7 @@ public class RuleOperationsTest { .setSubCharacteristicId(2).setRemediationFunction("LINEAR").setRemediationCoefficient("1h"); RuleKey ruleKey = RuleKey.of("squid", "UselessImportCheck"); - when(ruleDao.getByKey(session, ruleKey)).thenReturn(dto); + when(ruleDao.getNullableByKey(session, ruleKey)).thenReturn(dto); CharacteristicDto subCharacteristic = new CharacteristicDto().setId(2).setKey("COMPILER").setName("Compiler").setParentId(1); when(characteristicDao.selectByKey("COMPILER", session)).thenReturn(subCharacteristic); diff --git a/sonar-server/src/test/java/org/sonar/server/rule/RuleServiceMediumTest.java b/sonar-server/src/test/java/org/sonar/server/rule/RuleServiceMediumTest.java index f2b4f018c1f..4a5a61282e3 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/RuleServiceMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/RuleServiceMediumTest.java @@ -26,7 +26,7 @@ import org.junit.ClassRule; import org.junit.Test; import org.sonar.api.rule.RuleKey; import org.sonar.core.persistence.DbSession; -import org.sonar.core.persistence.MyBatis; +import org.sonar.server.db.DbClient; import org.sonar.server.rule.db.RuleDao; import org.sonar.server.rule.index.RuleIndex; import org.sonar.server.rule.index.RuleNormalizer; @@ -50,7 +50,7 @@ public class RuleServiceMediumTest { @Before public void before() { tester.clearDbAndEs(); - dbSession = tester.get(MyBatis.class).openSession(false); + dbSession = tester.get(DbClient.class).openSession(false); } @After @@ -62,14 +62,10 @@ public class RuleServiceMediumTest { public void test_list_tags() throws InterruptedException { // insert db RuleKey key1 = RuleKey.of("javascript", "S001"); - dao.insert(dbSession, RuleTesting.newDto(key1) - .setTags(Sets.newHashSet("tag1")) - .setSystemTags(Sets.newHashSet("sys1", "sys2"))); - RuleKey key2 = RuleKey.of("java", "S001"); - dao.insert(dbSession, RuleTesting.newDto(key2) - .setTags(Sets.newHashSet("tag2")) - .setSystemTags(Collections.emptySet())); + dao.insert(dbSession, + RuleTesting.newDto(key1).setTags(Sets.newHashSet("tag1")).setSystemTags(Sets.newHashSet("sys1", "sys2")), + RuleTesting.newDto(key2).setTags(Sets.newHashSet("tag2")).setSystemTags(Collections.emptySet())); dbSession.commit(); // all tags, including system diff --git a/sonar-server/src/test/java/org/sonar/server/rule/RuleUpdaterMediumTest.java b/sonar-server/src/test/java/org/sonar/server/rule/RuleUpdaterMediumTest.java index 97fca0fea56..b7cfb41146f 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/RuleUpdaterMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/RuleUpdaterMediumTest.java @@ -106,7 +106,7 @@ public class RuleUpdaterMediumTest { updater.update(update, UserSession.get()); dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getNoteData()).isEqualTo("my *note*"); assertThat(rule.getNoteUserLogin()).isEqualTo("me"); assertThat(rule.getTags()).containsOnly("tag1"); @@ -136,7 +136,7 @@ public class RuleUpdaterMediumTest { updater.update(update, UserSession.get()); dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getNoteData()).isEqualTo("my *note*"); assertThat(rule.getNoteUserLogin()).isEqualTo("me"); assertThat(rule.getNoteCreatedAt()).isNotNull(); @@ -161,7 +161,7 @@ public class RuleUpdaterMediumTest { updater.update(update, UserSession.get()); dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getNoteData()).isNull(); assertThat(rule.getNoteUserLogin()).isNull(); assertThat(rule.getNoteCreatedAt()).isNull(); @@ -174,8 +174,7 @@ public class RuleUpdaterMediumTest { // insert db db.ruleDao().insert(dbSession, RuleTesting.newDto(RULE_KEY) .setTags(Sets.newHashSet("security")) - .setSystemTags(Sets.newHashSet("java8", "javadoc")) - ); + .setSystemTags(Sets.newHashSet("java8", "javadoc"))); dbSession.commit(); // java8 is a system tag -> ignore @@ -183,7 +182,7 @@ public class RuleUpdaterMediumTest { updater.update(update, UserSession.get()); dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getTags()).containsOnly("bug"); assertThat(rule.getSystemTags()).containsOnly("java8", "javadoc"); @@ -204,7 +203,7 @@ public class RuleUpdaterMediumTest { updater.update(update, UserSession.get()); dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getTags()).isEmpty(); assertThat(rule.getSystemTags()).containsOnly("java8", "javadoc"); @@ -255,7 +254,7 @@ public class RuleUpdaterMediumTest { // verify db dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getSubCharacteristicId()).isEqualTo(softReliabilityId); assertThat(rule.getRemediationFunction()).isEqualTo(DebtRemediationFunction.Type.CONSTANT_ISSUE.name()); assertThat(rule.getRemediationCoefficient()).isNull(); @@ -291,7 +290,7 @@ public class RuleUpdaterMediumTest { // verify db dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getSubCharacteristicId()).isNull(); assertThat(rule.getRemediationFunction()).isNull(); assertThat(rule.getRemediationCoefficient()).isNull(); @@ -327,7 +326,7 @@ public class RuleUpdaterMediumTest { // verify db dbSession.clearCache(); - RuleDto rule = db.ruleDao().getByKey(dbSession, RULE_KEY); + RuleDto rule = db.ruleDao().getNullableByKey(dbSession, RULE_KEY); assertThat(rule.getSubCharacteristicId()).isEqualTo(-1); assertThat(rule.getRemediationFunction()).isNull(); assertThat(rule.getRemediationCoefficient()).isNull(); diff --git a/sonar-server/src/test/java/org/sonar/server/rule/db/RuleDaoTest.java b/sonar-server/src/test/java/org/sonar/server/rule/db/RuleDaoTest.java index e321fe635a5..cf47f60aa4f 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/db/RuleDaoTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/db/RuleDaoTest.java @@ -19,7 +19,6 @@ */ package org.sonar.server.rule.db; -import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import org.junit.After; import org.junit.Before; @@ -113,7 +112,7 @@ public class RuleDaoTest extends AbstractDaoTestCase { @Test public void select_by_id() throws Exception { setupData("selectById"); - RuleDto ruleDto = dao.getById(2, session); + RuleDto ruleDto = dao.getById(session, 2); assertThat(ruleDto.getId()).isEqualTo(2); assertThat(ruleDto.getName()).isEqualTo("Avoid Null"); @@ -125,9 +124,9 @@ public class RuleDaoTest extends AbstractDaoTestCase { @Test public void select_by_rule_key() throws Exception { setupData("select_by_rule_key"); - assertThat(dao.getByKey(session, RuleKey.of("checkstyle", "AvoidComparison"))).isNotNull(); - assertThat(dao.getByKey(session, RuleKey.of("checkstyle", "Unknown"))).isNull(); - assertThat(dao.getByKey(session, RuleKey.of("Unknown", "AvoidComparison"))).isNull(); + assertThat(dao.getNullableByKey(session, RuleKey.of("checkstyle", "AvoidComparison"))).isNotNull(); + assertThat(dao.getNullableByKey(session, RuleKey.of("checkstyle", "Unknown"))).isNull(); + assertThat(dao.getNullableByKey(session, RuleKey.of("Unknown", "AvoidComparison"))).isNull(); } @Test @@ -285,7 +284,7 @@ public class RuleDaoTest extends AbstractDaoTestCase { .setDefaultRemediationOffset("5min") .setEffortToFixDescription("squid.S115.effortToFix2"); - dao.insert(session, ImmutableList.of(ruleToInsert1, ruleToInsert2)); + dao.insert(session, ruleToInsert1, ruleToInsert2); session.commit(); checkTables("insert_all", "rules"); @@ -308,8 +307,8 @@ public class RuleDaoTest extends AbstractDaoTestCase { @Test public void select_parameters_by_rule_id() throws Exception { setupData("select_parameters_by_rule_id"); - RuleDto rule = dao.getById(1, session); - List ruleDtos = dao.findRuleParamsByRuleKey(rule.getKey(), session); + RuleDto rule = dao.getById(session, 1); + List ruleDtos = dao.findRuleParamsByRuleKey(session, rule.getKey()); assertThat(ruleDtos.size()).isEqualTo(1); RuleParamDto ruleDto = ruleDtos.get(0); @@ -324,17 +323,17 @@ public class RuleDaoTest extends AbstractDaoTestCase { public void select_parameters_by_rule_ids() throws Exception { setupData("select_parameters_by_rule_ids"); - RuleDto rule1 = dao.getById(1, session); - RuleDto rule2 = dao.getById(2, session); - assertThat(dao.findRuleParamsByRules(newArrayList(rule1, rule2), session)).hasSize(2); - assertThat(dao.findRuleParamsByRules(newArrayList(rule1), session)).hasSize(1); + RuleDto rule1 = dao.getById(session, 1); + RuleDto rule2 = dao.getById(session, 2); + assertThat(dao.findRuleParamsByRules(session, newArrayList(rule1, rule2))).hasSize(2); + assertThat(dao.findRuleParamsByRules(session, newArrayList(rule1))).hasSize(1); } @Test public void insert_parameter() { setupData("insert_parameter"); - RuleDto rule1 = dao.getById(1, session); + RuleDto rule1 = dao.getById(session, 1); RuleParamDto param = RuleParamDto.createFor(rule1) .setName("max") @@ -342,7 +341,7 @@ public class RuleDaoTest extends AbstractDaoTestCase { .setDefaultValue("30") .setDescription("My Parameter"); - dao.addRuleParam(rule1, param, session); + dao.addRuleParam(session, rule1, param); session.commit(); checkTables("insert_parameter", "rules_parameters"); @@ -352,9 +351,9 @@ public class RuleDaoTest extends AbstractDaoTestCase { public void update_parameter() { setupData("update_parameter"); - RuleDto rule1 = dao.getById(1, session); + RuleDto rule1 = dao.getById(session, 1); - List params = dao.findRuleParamsByRuleKey(rule1.getKey(), session); + List params = dao.findRuleParamsByRuleKey(session, rule1.getKey()); assertThat(params).hasSize(1); RuleParamDto param = Iterables.getFirst(params, null); @@ -364,7 +363,7 @@ public class RuleDaoTest extends AbstractDaoTestCase { .setDefaultValue("^[a-z]+(\\.[a-z][a-z0-9]*)*$") .setDescription("Regular expression used to check the package names against."); - dao.updateRuleParam(rule1, param, session); + dao.updateRuleParam(session, rule1, param); session.commit(); checkTables("update_parameter", "rules_parameters"); diff --git a/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexMediumTest.java b/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexMediumTest.java index a2d6eda81d8..03488db1ef2 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexMediumTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/index/RuleIndexMediumTest.java @@ -40,6 +40,7 @@ import org.sonar.core.rule.RuleDto; import org.sonar.core.rule.RuleParamDto; import org.sonar.core.technicaldebt.db.CharacteristicDto; import org.sonar.server.db.DbClient; +import org.sonar.server.debt.DebtTesting; import org.sonar.server.rule.Rule; import org.sonar.server.rule.db.RuleDao; import org.sonar.server.search.FacetValue; @@ -160,7 +161,6 @@ public class RuleIndexMediumTest { dao.insert(dbSession, newRuleDto(RuleKey.of("javascript", "S001"))); dbSession.commit(); - QueryOptions options = new QueryOptions(); options.addFieldsToReturn(RuleNormalizer.RuleField.LANGUAGE.field(), RuleNormalizer.RuleField.STATUS.field()); Result results = index.search(new RuleQuery(), options); @@ -184,7 +184,6 @@ public class RuleIndexMediumTest { .setName("testing the partial match and matching of rule")); dbSession.commit(); - // substring RuleQuery query = new RuleQuery().setQueryText("test"); assertThat(index.search(query, new QueryOptions()).getHits()).hasSize(1); @@ -259,11 +258,11 @@ public class RuleIndexMediumTest { @Test public void search_by_any_of_languages() throws InterruptedException { - dao.insert(dbSession, newRuleDto(RuleKey.of("java", "S001")).setLanguage("java")); - dao.insert(dbSession, newRuleDto(RuleKey.of("javascript", "S002")).setLanguage("js")); + dao.insert(dbSession, + newRuleDto(RuleKey.of("java", "S001")).setLanguage("java"), + newRuleDto(RuleKey.of("javascript", "S002")).setLanguage("js")); dbSession.commit(); - RuleQuery query = new RuleQuery().setLanguages(Arrays.asList("cobol", "js")); Result results = index.search(query, new QueryOptions()); @@ -286,16 +285,10 @@ public class RuleIndexMediumTest { @Test public void search_by_characteristics() throws InterruptedException { - - CharacteristicDto char1 = new CharacteristicDto().setName("char1") - .setKey("char1") - .setEnabled(true); + CharacteristicDto char1 = DebtTesting.newCharacteristicDto("char1"); dbClient.debtCharacteristicDao().insert(char1, dbSession); - dbSession.commit(); - CharacteristicDto char11 = new CharacteristicDto().setName("char11") - .setKey("char11") - .setEnabled(true) + CharacteristicDto char11 = DebtTesting.newCharacteristicDto("char11") .setParentId(char1.getId()); dbClient.debtCharacteristicDao().insert(char11, dbSession); dbSession.commit(); @@ -493,14 +486,14 @@ public class RuleIndexMediumTest { .setName("testing") .setType("STRING") .setDefaultValue(value); - dao.addRuleParam(rule, param, dbSession); + dao.addRuleParam(dbSession, rule, param); ActiveRuleDto activeRule = ActiveRuleDto.createFor(profile, rule) .setSeverity("BLOCKER"); ActiveRuleParamDto activeRuleParam = ActiveRuleParamDto.createFor(param); dbClient.activeRuleDao().insert(dbSession, activeRule); - dbClient.activeRuleDao().addParam(activeRule, activeRuleParam, dbSession); + dbClient.activeRuleDao().addParam(dbSession, activeRule, activeRuleParam); dbSession.commit(); assertThat(index.getByKey(rule.getKey()).params().get(0).defaultValue()).isEqualTo(value); diff --git a/sonar-server/src/test/java/org/sonar/server/rule/ws/RulesWebServiceTest.java b/sonar-server/src/test/java/org/sonar/server/rule/ws/RulesWebServiceTest.java index 990fd9c99f7..b57e84e071f 100644 --- a/sonar-server/src/test/java/org/sonar/server/rule/ws/RulesWebServiceTest.java +++ b/sonar-server/src/test/java/org/sonar/server/rule/ws/RulesWebServiceTest.java @@ -236,25 +236,25 @@ public class RulesWebServiceTest { .setType("string") .setDescription("My small description") .setName("my_var"); - ruleDao.addRuleParam(rule, param, session); + ruleDao.addRuleParam(session, rule, param); RuleParamDto param2 = RuleParamDto.createFor(rule) .setDefaultValue("other value") .setType("integer") .setDescription("My small description") .setName("the_var"); - ruleDao.addRuleParam(rule, param2, session); + ruleDao.addRuleParam(session, rule, param2); ActiveRuleDto activeRule = newActiveRule(profile, rule); tester.get(ActiveRuleDao.class).insert(session, activeRule); ActiveRuleParamDto activeRuleParam = ActiveRuleParamDto.createFor(param) .setValue("The VALUE"); - tester.get(ActiveRuleDao.class).addParam(activeRule, activeRuleParam, session); + tester.get(ActiveRuleDao.class).addParam(session, activeRule, activeRuleParam); ActiveRuleParamDto activeRuleParam2 = ActiveRuleParamDto.createFor(param2) .setValue("The Other Value"); - tester.get(ActiveRuleDao.class).addParam(activeRule, activeRuleParam2, session); + tester.get(ActiveRuleDao.class).addParam(session, activeRule, activeRuleParam2); session.commit(); diff --git a/sonar-server/src/test/java/org/sonar/server/source/SourceServiceTest.java b/sonar-server/src/test/java/org/sonar/server/source/SourceServiceTest.java index 64c448ff4ed..fc92f425208 100644 --- a/sonar-server/src/test/java/org/sonar/server/source/SourceServiceTest.java +++ b/sonar-server/src/test/java/org/sonar/server/source/SourceServiceTest.java @@ -99,7 +99,7 @@ public class SourceServiceTest { @Test public void get_scm_author_data() throws Exception { service.getScmAuthorData(COMPONENT_KEY); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.SCM_AUTHORS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.SCM_AUTHORS_BY_LINE_KEY)); } @Test @@ -117,7 +117,7 @@ public class SourceServiceTest { @Test public void not_get_scm_author_data_if_no_data() throws Exception { MockUserSession.set().addComponentPermission(UserRole.CODEVIEWER, PROJECT_KEY, COMPONENT_KEY); - when(measureDao.getByKey(eq(session), any(MeasureKey.class))).thenReturn(null); + when(measureDao.getNullableByKey(eq(session), any(MeasureKey.class))).thenReturn(null); assertThat(service.getScmAuthorData(COMPONENT_KEY)).isNull(); } @@ -125,13 +125,13 @@ public class SourceServiceTest { public void get_scm_date_data() throws Exception { MockUserSession.set().addComponentPermission(UserRole.CODEVIEWER, PROJECT_KEY, COMPONENT_KEY); service.getScmDateData(COMPONENT_KEY); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.SCM_LAST_COMMIT_DATETIMES_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.SCM_LAST_COMMIT_DATETIMES_BY_LINE_KEY)); } @Test public void not_get_scm_date_data_if_no_data() throws Exception { MockUserSession.set().addComponentPermission(UserRole.CODEVIEWER, PROJECT_KEY, COMPONENT_KEY); - when(measureDao.getByKey(eq(session), any(MeasureKey.class))).thenReturn(null); + when(measureDao.getNullableByKey(eq(session), any(MeasureKey.class))).thenReturn(null); assertThat(service.getScmDateData(COMPONENT_KEY)).isNull(); } diff --git a/sonar-server/src/test/java/org/sonar/server/test/CoverageServiceTest.java b/sonar-server/src/test/java/org/sonar/server/test/CoverageServiceTest.java index d7561ac9673..7cc65583e1d 100644 --- a/sonar-server/src/test/java/org/sonar/server/test/CoverageServiceTest.java +++ b/sonar-server/src/test/java/org/sonar/server/test/CoverageServiceTest.java @@ -79,43 +79,43 @@ public class CoverageServiceTest { @Test public void get_hits_data() throws Exception { service.getHits(COMPONENT_KEY, CoverageService.TYPE.UT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.COVERAGE_LINE_HITS_DATA_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.COVERAGE_LINE_HITS_DATA_KEY)); service.getHits(COMPONENT_KEY, CoverageService.TYPE.IT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_COVERAGE_LINE_HITS_DATA_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_COVERAGE_LINE_HITS_DATA_KEY)); service.getHits(COMPONENT_KEY, CoverageService.TYPE.OVERALL); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_COVERAGE_LINE_HITS_DATA_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_COVERAGE_LINE_HITS_DATA_KEY)); } @Test public void not_get_hits_data_if_no_data() throws Exception { - when(measureDao.getByKey(eq(session), any(MeasureKey.class))).thenReturn(null); + when(measureDao.getNullableByKey(eq(session), any(MeasureKey.class))).thenReturn(null); assertThat(service.getHits(COMPONENT_KEY, CoverageService.TYPE.UT)).isEqualTo(Collections.emptyMap()); } @Test public void get_conditions_data() throws Exception { service.getConditions(COMPONENT_KEY, CoverageService.TYPE.UT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.CONDITIONS_BY_LINE_KEY)); service.getConditions(COMPONENT_KEY, CoverageService.TYPE.IT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_CONDITIONS_BY_LINE_KEY)); service.getConditions(COMPONENT_KEY, CoverageService.TYPE.OVERALL); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_CONDITIONS_BY_LINE_KEY)); } @Test public void get_covered_conditions_data() throws Exception { service.getCoveredConditions(COMPONENT_KEY, CoverageService.TYPE.UT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.COVERED_CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.COVERED_CONDITIONS_BY_LINE_KEY)); service.getCoveredConditions(COMPONENT_KEY, CoverageService.TYPE.IT); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_COVERED_CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.IT_COVERED_CONDITIONS_BY_LINE_KEY)); service.getCoveredConditions(COMPONENT_KEY, CoverageService.TYPE.OVERALL); - verify(measureDao).getByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_COVERED_CONDITIONS_BY_LINE_KEY)); + verify(measureDao).getNullableByKey(session, MeasureKey.of(COMPONENT_KEY, CoreMetrics.OVERALL_COVERED_CONDITIONS_BY_LINE_KEY)); } @Test -- 2.39.5