aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2017-05-11 23:21:12 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2017-05-12 09:52:41 +0200
commit2ab2fc924295122ed0b334ac481b9d779922cbf0 (patch)
tree7b6bd547498719046ac5276bf041fb01759707a7
parent71322861fe6d19a1dd7054be8168ae41a53c3eb1 (diff)
downloadsonarqube-2ab2fc924295122ed0b334ac481b9d779922cbf0.tar.gz
sonarqube-2ab2fc924295122ed0b334ac481b9d779922cbf0.zip
SONAR-9219 Deprecate parameters "developer{Id|Key}" in web services api/measures/component and api/measures/component_tree
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/measure/ws/MeasuresWsParametersBuilder.java15
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/ws/KeyExamples.java1
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/measure/ws/ComponentActionTest.java22
3 files changed, 24 insertions, 14 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/measure/ws/MeasuresWsParametersBuilder.java b/server/sonar-server/src/main/java/org/sonar/server/measure/ws/MeasuresWsParametersBuilder.java
index d989f70f4ce..61877ece378 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/measure/ws/MeasuresWsParametersBuilder.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/measure/ws/MeasuresWsParametersBuilder.java
@@ -21,8 +21,6 @@ package org.sonar.server.measure.ws;
import org.sonar.api.server.ws.WebService.NewAction;
import org.sonar.api.server.ws.WebService.NewParam;
-import org.sonar.core.util.Uuids;
-import org.sonar.server.ws.KeyExamples;
import static org.sonarqube.ws.client.measure.MeasuresWsParameters.ADDITIONAL_FIELDS;
import static org.sonarqube.ws.client.measure.MeasuresWsParameters.PARAM_ADDITIONAL_FIELDS;
@@ -51,12 +49,13 @@ class MeasuresWsParametersBuilder {
}
static void createDeveloperParameters(NewAction action) {
- action.createParam(PARAM_DEVELOPER_ID)
- .setDescription("Developer id. If set, developer's measures are returned. Only with Developer Cockpit plugin.")
- .setExampleValue(Uuids.UUID_EXAMPLE_01);
- action.createParam(PARAM_DEVELOPER_KEY)
- .setDescription("Developer key. If set, developer's measures are returned. Only with Developer Cockpit plugin.")
- .setExampleValue(KeyExamples.KEY_DEVELOPER_EXAMPLE_001);
+ deprecateDeveloperParameter(action, PARAM_DEVELOPER_ID);
+ deprecateDeveloperParameter(action, PARAM_DEVELOPER_KEY);
}
+ private static void deprecateDeveloperParameter(NewAction action, String key) {
+ action.createParam(key)
+ .setDeprecatedSince("6.4")
+ .setDescription("Deprecated parameter, used previously with the Developer Cockpit plugin. No measures are returned if parameter is set.");
+ }
}
diff --git a/server/sonar-server/src/main/java/org/sonar/server/ws/KeyExamples.java b/server/sonar-server/src/main/java/org/sonar/server/ws/KeyExamples.java
index f9073234e8b..93c1513a3e8 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/ws/KeyExamples.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/ws/KeyExamples.java
@@ -25,7 +25,6 @@ public class KeyExamples {
public static final String KEY_PROJECT_EXAMPLE_001 = "my_project";
public static final String KEY_PROJECT_EXAMPLE_002 = "another_project";
public static final String KEY_PROJECT_EXAMPLE_003 = "third_project";
- public static final String KEY_DEVELOPER_EXAMPLE_001 = "DEV:ada@lovelace.com";
public static final String KEY_ORG_EXAMPLE_001 = "my-org";
public static final String KEY_ORG_EXAMPLE_002 = "foo-company";
diff --git a/server/sonar-server/src/test/java/org/sonar/server/measure/ws/ComponentActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/measure/ws/ComponentActionTest.java
index 8a648a7d2ce..8978622eee0 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/measure/ws/ComponentActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/measure/ws/ComponentActionTest.java
@@ -24,6 +24,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.sonar.api.resources.Qualifiers;
+import org.sonar.api.server.ws.WebService;
import org.sonar.api.utils.System2;
import org.sonar.api.web.UserRole;
import org.sonar.db.DbClient;
@@ -45,8 +46,8 @@ import org.sonarqube.ws.WsMeasures.ComponentWsResponse;
import static org.assertj.core.api.Assertions.assertThat;
import static org.sonar.api.utils.DateUtils.parseDateTime;
import static org.sonar.db.component.ComponentTesting.newFileDto;
-import static org.sonar.db.component.ComponentTesting.newProjectCopy;
import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto;
+import static org.sonar.db.component.ComponentTesting.newProjectCopy;
import static org.sonar.db.component.ComponentTesting.newView;
import static org.sonar.db.measure.MeasureTesting.newMeasureDto;
import static org.sonar.db.metric.MetricTesting.newMetricDto;
@@ -66,11 +67,11 @@ public class ComponentActionTest {
@Rule
public DbTester db = DbTester.create(System2.INSTANCE);
- ComponentDbTester componentDb = new ComponentDbTester(db);
- DbClient dbClient = db.getDbClient();
- final DbSession dbSession = db.getSession();
+ private ComponentDbTester componentDb = new ComponentDbTester(db);
+ private DbClient dbClient = db.getDbClient();
+ private final DbSession dbSession = db.getSession();
- WsActionTester ws = new WsActionTester(new ComponentAction(dbClient, new ComponentFinder(dbClient), userSession));
+ private WsActionTester ws = new WsActionTester(new ComponentAction(dbClient, new ComponentFinder(dbClient), userSession));
@Before
public void setUp() {
@@ -78,6 +79,17 @@ public class ComponentActionTest {
}
@Test
+ public void test_definition_of_web_service() {
+ WebService.Action def = ws.getDef();
+
+ assertThat(def.since()).isEqualTo("5.4");
+ assertThat(def.params()).extracting(WebService.Param::key)
+ .containsExactlyInAnyOrder("componentId", "componentKey", "metricKeys", "additionalFields", "developerId", "developerKey");
+ assertThat(def.param("developerId").deprecatedSince()).isEqualTo("6.4");
+ assertThat(def.param("developerKey").deprecatedSince()).isEqualTo("6.4");
+ }
+
+ @Test
public void json_example() {
insertJsonExampleData();