From ec7b818dc6ce2995130d200788356ee43e75dc9c Mon Sep 17 00:00:00 2001 From: Daniel Schwarz Date: Thu, 23 Mar 2017 10:25:32 +0100 Subject: [PATCH] SONAR-8857 split RuleActivationActions into activation and deactivation --- ...onActions.java => ActivateRuleAction.java} | 56 ++++----------- .../ws/DeactivateRuleAction.java | 72 +++++++++++++++++++ .../server/qualityprofile/ws/QProfilesWs.java | 6 +- .../qualityprofile/ws/QProfilesWsModule.java | 3 +- .../ws/ActivateRuleActionTest.java | 40 +++++++++++ .../ws/ChangeParentActionTest.java | 2 +- .../ws/ChangelogActionMockTest.java | 2 +- .../ws/DeactivateRuleActionTest.java | 40 +++++++++++ .../ws/ExportersActionTest.java | 2 +- .../ws/ImportersActionTest.java | 2 +- .../qualityprofile/ws/ProjectsActionTest.java | 1 - .../ws/QProfilesWsModuleTest.java | 2 +- .../qualityprofile/ws/QProfilesWsTest.java | 18 ----- .../qualityprofile/ws/RenameActionTest.java | 3 - 14 files changed, 175 insertions(+), 74 deletions(-) rename server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/{RuleActivationActions.java => ActivateRuleAction.java} (74%) create mode 100644 server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/DeactivateRuleAction.java create mode 100644 server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java create mode 100644 server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java diff --git a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/RuleActivationActions.java b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/ActivateRuleAction.java similarity index 74% rename from server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/RuleActivationActions.java rename to server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/ActivateRuleAction.java index 9887de2e111..c70949d85be 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/RuleActivationActions.java +++ b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/ActivateRuleAction.java @@ -27,12 +27,10 @@ import org.sonar.api.server.ws.Response; import org.sonar.api.server.ws.WebService; import org.sonar.api.utils.KeyValueFormat; import org.sonar.core.util.Uuids; -import org.sonar.db.qualityprofile.ActiveRuleKey; import org.sonar.server.qualityprofile.QProfileService; import org.sonar.server.qualityprofile.RuleActivation; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_ACTIVATE_RULE; -import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_DEACTIVATE_RULE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_PARAMS; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_PROFILE_KEY; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_RESET; @@ -40,28 +38,31 @@ import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters. import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_SEVERITY; @ServerSide -public class RuleActivationActions { +public class ActivateRuleAction implements QProfileWsAction { private final QProfileService service; - public RuleActivationActions(QProfileService service) { + public ActivateRuleAction(QProfileService service) { this.service = service; } - void define(WebService.NewController controller) { - defineActivateAction(controller); - defineDeactivateAction(controller); - } - - private void defineActivateAction(WebService.NewController controller) { + public void define(WebService.NewController controller) { WebService.NewAction activate = controller .createAction(ACTION_ACTIVATE_RULE) .setDescription("Activate a rule on a Quality profile") - .setHandler(this::activate) + .setHandler(this) .setPost(true) .setSince("4.4"); - defineActiveRuleKeyParameters(activate); + activate.createParam(PARAM_PROFILE_KEY) + .setDescription("Key of Quality profile, can be obtained through api/profiles/list") + .setRequired(true) + .setExampleValue(Uuids.UUID_EXAMPLE_01); + + activate.createParam(PARAM_RULE_KEY) + .setDescription("Key of the rule") + .setRequired(true) + .setExampleValue("squid:AvoidCycles"); activate.createParam(PARAM_SEVERITY) .setDescription(String.format("Severity. Ignored if parameter %s is true.", PARAM_RESET)) @@ -77,29 +78,8 @@ public class RuleActivationActions { .setBooleanPossibleValues(); } - private void defineDeactivateAction(WebService.NewController controller) { - WebService.NewAction deactivate = controller - .createAction(ACTION_DEACTIVATE_RULE) - .setDescription("Deactivate a rule on a Quality profile") - .setHandler(this::deactivate) - .setPost(true) - .setSince("4.4"); - defineActiveRuleKeyParameters(deactivate); - } - - private static void defineActiveRuleKeyParameters(WebService.NewAction action) { - action.createParam(PARAM_PROFILE_KEY) - .setDescription("Key of Quality profile, can be obtained through api/profiles/list") - .setRequired(true) - .setExampleValue(Uuids.UUID_EXAMPLE_01); - - action.createParam(PARAM_RULE_KEY) - .setDescription("Key of the rule") - .setRequired(true) - .setExampleValue("squid:AvoidCycles"); - } - - private void activate(Request request, Response response) { + @Override + public void handle(Request request, Response response) throws Exception { RuleKey ruleKey = readRuleKey(request); RuleActivation activation = new RuleActivation(ruleKey); activation.setSeverity(request.param(PARAM_SEVERITY)); @@ -111,13 +91,7 @@ public class RuleActivationActions { service.activate(request.mandatoryParam(PARAM_PROFILE_KEY), activation); } - private void deactivate(Request request, Response response) { - RuleKey ruleKey = readRuleKey(request); - service.deactivate(ActiveRuleKey.of(request.mandatoryParam(PARAM_PROFILE_KEY), ruleKey)); - } - private static RuleKey readRuleKey(Request request) { return RuleKey.parse(request.mandatoryParam(PARAM_RULE_KEY)); } - } diff --git a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/DeactivateRuleAction.java b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/DeactivateRuleAction.java new file mode 100644 index 00000000000..600c90bcd5d --- /dev/null +++ b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/DeactivateRuleAction.java @@ -0,0 +1,72 @@ +/* + * SonarQube + * Copyright (C) 2009-2017 SonarSource SA + * mailto:info AT sonarsource DOT com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +package org.sonar.server.qualityprofile.ws; + +import org.sonar.api.rule.RuleKey; +import org.sonar.api.server.ServerSide; +import org.sonar.api.server.ws.Request; +import org.sonar.api.server.ws.Response; +import org.sonar.api.server.ws.WebService; +import org.sonar.core.util.Uuids; +import org.sonar.db.qualityprofile.ActiveRuleKey; +import org.sonar.server.qualityprofile.QProfileService; + +import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_DEACTIVATE_RULE; +import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_PROFILE_KEY; +import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ActivateActionParameters.PARAM_RULE_KEY; + +@ServerSide +public class DeactivateRuleAction implements QProfileWsAction { + + private final QProfileService service; + + public DeactivateRuleAction(QProfileService service) { + this.service = service; + } + + public void define(WebService.NewController controller) { + WebService.NewAction deactivate = controller + .createAction(ACTION_DEACTIVATE_RULE) + .setDescription("Deactivate a rule on a Quality profile") + .setHandler(this) + .setPost(true) + .setSince("4.4"); + + deactivate.createParam(PARAM_PROFILE_KEY) + .setDescription("Key of Quality profile, can be obtained through api/profiles/list") + .setRequired(true) + .setExampleValue(Uuids.UUID_EXAMPLE_01); + + deactivate.createParam(PARAM_RULE_KEY) + .setDescription("Key of the rule") + .setRequired(true) + .setExampleValue("squid:AvoidCycles"); + } + + @Override + public void handle(Request request, Response response) throws Exception { + RuleKey ruleKey = readRuleKey(request); + service.deactivate(ActiveRuleKey.of(request.mandatoryParam(PARAM_PROFILE_KEY), ruleKey)); + } + + private static RuleKey readRuleKey(Request request) { + return RuleKey.parse(request.mandatoryParam(PARAM_RULE_KEY)); + } +} diff --git a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWs.java b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWs.java index 4c622bb0ae0..f004df52703 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWs.java +++ b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWs.java @@ -27,14 +27,11 @@ public class QProfilesWs implements WebService { public static final String API_ENDPOINT = CONTROLLER_QUALITY_PROFILES; - private final RuleActivationActions ruleActivationActions; private final BulkRuleActivationActions bulkRuleActivationActions; private final QProfileWsAction[] actions; - public QProfilesWs(RuleActivationActions ruleActivationActions, - BulkRuleActivationActions bulkRuleActivationActions, + public QProfilesWs(BulkRuleActivationActions bulkRuleActivationActions, QProfileWsAction... actions) { - this.ruleActivationActions = ruleActivationActions; this.bulkRuleActivationActions = bulkRuleActivationActions; this.actions = actions; } @@ -45,7 +42,6 @@ public class QProfilesWs implements WebService { .setDescription("Manage quality profiles.") .setSince("4.4"); - ruleActivationActions.define(controller); bulkRuleActivationActions.define(controller); for (QProfileWsAction action : actions) { action.define(controller); diff --git a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWsModule.java b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWsModule.java index 50eaa911c26..66f3d51cc1a 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWsModule.java +++ b/server/sonar-server/src/main/java/org/sonar/server/qualityprofile/ws/QProfilesWsModule.java @@ -46,7 +46,8 @@ public class QProfilesWsModule extends Module { RemoveProjectAction.class, RestoreAction.class, RestoreBuiltInAction.class, - RuleActivationActions.class, + ActivateRuleAction.class, + DeactivateRuleAction.class, SearchAction.class, SetDefaultAction.class ); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java new file mode 100644 index 00000000000..381f1b1a1cf --- /dev/null +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java @@ -0,0 +1,40 @@ +/* + * SonarQube + * Copyright (C) 2009-2017 SonarSource SA + * mailto:info AT sonarsource DOT com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +package org.sonar.server.qualityprofile.ws; + +import org.junit.Test; +import org.sonar.api.server.ws.WebService; +import org.sonar.server.qualityprofile.QProfileService; +import org.sonar.server.ws.WsActionTester; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; + +public class ActivateRuleActionTest { + + @Test + public void define_activate_rule_action() { + ActivateRuleAction action = new ActivateRuleAction(mock(QProfileService.class)); + WebService.Action definition = new WsActionTester(action).getDef(); + assertThat(definition).isNotNull(); + assertThat(definition.isPost()).isTrue(); + assertThat(definition.params()).extracting(WebService.Param::key).containsExactlyInAnyOrder("severity", "profile_key", "reset", "rule_key", "params"); + } +} diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java index 0730036a52b..fb591c24523 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java @@ -143,7 +143,7 @@ public class ChangeParentActionTest { @Test public void define_change_parent_action() { - WebService.Action changeParent = new WsTester(new QProfilesWs(mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), underTest)) + WebService.Action changeParent = new WsTester(new QProfilesWs(mock(BulkRuleActivationActions.class), underTest)) .action(QualityProfileWsParameters.CONTROLLER_QUALITY_PROFILES, "change_parent"); assertThat(changeParent).isNotNull(); assertThat(changeParent.isPost()).isTrue(); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangelogActionMockTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangelogActionMockTest.java index e8c1bebf732..1de08f42cce 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangelogActionMockTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ChangelogActionMockTest.java @@ -63,7 +63,7 @@ public class ChangelogActionMockTest { @Before public void before() { - wsTester = new WsTester(new QProfilesWs(mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), + wsTester = new WsTester(new QProfilesWs(mock(BulkRuleActivationActions.class), new ChangelogAction(changelogLoader, wsSupport, new Languages(), dbTester.getDbClient()))); organization = dbTester.organizations().insert(); } diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java new file mode 100644 index 00000000000..4b6107fb5ce --- /dev/null +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java @@ -0,0 +1,40 @@ +/* + * SonarQube + * Copyright (C) 2009-2017 SonarSource SA + * mailto:info AT sonarsource DOT com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +package org.sonar.server.qualityprofile.ws; + +import org.junit.Test; +import org.sonar.api.server.ws.WebService; +import org.sonar.server.qualityprofile.QProfileService; +import org.sonar.server.ws.WsActionTester; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; + +public class DeactivateRuleActionTest { + + @Test + public void define_deactivate_rule_action() { + DeactivateRuleAction action = new DeactivateRuleAction(mock(QProfileService.class)); + WebService.Action definition = new WsActionTester(action).getDef(); + assertThat(definition).isNotNull(); + assertThat(definition.isPost()).isTrue(); + assertThat(definition.params()).extracting(WebService.Param::key).containsExactlyInAnyOrder("profile_key", "rule_key"); + } +} diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ExportersActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ExportersActionTest.java index 52fe01e8ee0..7b953ea5322 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ExportersActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ExportersActionTest.java @@ -32,7 +32,7 @@ public class ExportersActionTest { @Test public void importers_nominal() throws Exception { WsTester wsTester = new WsTester(new QProfilesWs( - mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), + mock(BulkRuleActivationActions.class), new ExportersAction(createExporters()))); wsTester.newGetRequest("api/qualityprofiles", "exporters").execute().assertJson(getClass(), "exporters.json"); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ImportersActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ImportersActionTest.java index 2f8c089f5aa..feb7ee2b596 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ImportersActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ImportersActionTest.java @@ -33,7 +33,7 @@ public class ImportersActionTest { @Test public void importers_nominal() throws Exception { WsTester wsTester = new WsTester(new QProfilesWs( - mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), + mock(BulkRuleActivationActions.class), new ImportersAction(createImporters()))); wsTester.newGetRequest("api/qualityprofiles", "importers").execute().assertJson(getClass(), "importers.json"); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ProjectsActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ProjectsActionTest.java index 4a5c8e67f48..f19b3b6846f 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ProjectsActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/ProjectsActionTest.java @@ -61,7 +61,6 @@ public class ProjectsActionTest { private ComponentDto project4; private WsTester wsTester = new WsTester(new QProfilesWs( - mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), new ProjectsAction(dbClient, userSessionRule))); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsModuleTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsModuleTest.java index 4c66f747be1..d4a17603fd8 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsModuleTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsModuleTest.java @@ -29,6 +29,6 @@ public class QProfilesWsModuleTest { public void verify_count_of_added_components() { ComponentContainer container = new ComponentContainer(); new QProfilesWsModule().configure(container); - assertThat(container.size()).isEqualTo(24 + 2); + assertThat(container.size()).isEqualTo(25 + 2); } } diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsTest.java index 054dbb69f85..78caac67c0a 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/QProfilesWsTest.java @@ -40,7 +40,6 @@ import org.sonar.server.ws.WsTester; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_ACTIVATE_RULE; -import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_DEACTIVATE_RULE; public class QProfilesWsTest { @Rule @@ -62,7 +61,6 @@ public class QProfilesWsTest { ProfileImporter[] importers = createImporters(languages); controller = new WsTester(new QProfilesWs( - new RuleActivationActions(profileService), new BulkRuleActivationActions(profileService, null), new CreateAction(null, null, null, languages, wsSupport, userSessionRule, null, importers), new ImportersAction(importers), @@ -115,22 +113,6 @@ public class QProfilesWsTest { assertThat(search.param("organization").since()).isEqualTo("6.4"); } - @Test - public void define_activate_rule_action() { - WebService.Action restoreProfiles = controller.action(ACTION_ACTIVATE_RULE); - assertThat(restoreProfiles).isNotNull(); - assertThat(restoreProfiles.isPost()).isTrue(); - assertThat(restoreProfiles.params()).hasSize(5); - } - - @Test - public void define_deactivate_rule_action() { - WebService.Action restoreProfiles = controller.action(ACTION_DEACTIVATE_RULE); - assertThat(restoreProfiles).isNotNull(); - assertThat(restoreProfiles.isPost()).isTrue(); - assertThat(restoreProfiles.params()).hasSize(2); - } - @Test public void define_set_default_action() { WebService.Action setDefault = controller.action("set_default"); diff --git a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java index e4f2318d125..3bcbb08a955 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java @@ -24,7 +24,6 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; import org.sonar.api.utils.System2; -import org.sonar.core.util.UuidFactoryFast; import org.sonar.db.DbClient; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; @@ -35,7 +34,6 @@ import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.exceptions.UnauthorizedException; import org.sonar.server.organization.TestDefaultOrganizationProvider; -import org.sonar.server.qualityprofile.QProfileFactory; import org.sonar.server.qualityprofile.index.ActiveRuleIndexer; import org.sonar.server.tester.UserSessionRule; import org.sonar.server.ws.WsTester; @@ -70,7 +68,6 @@ public class RenameActionTest { dbClient, userSessionRule); tester = new WsTester(new QProfilesWs( - mock(RuleActivationActions.class), mock(BulkRuleActivationActions.class), underTest)); organization = db.organizations().insert(); -- 2.39.5