diff options
author | Simon Brandhof <simon.brandhof@sonarsource.com> | 2016-04-14 10:52:35 +0200 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@sonarsource.com> | 2016-04-14 15:40:01 +0200 |
commit | 21ce21cce54dbeaa40ee9ff3d57d4256e9e5cc3d (patch) | |
tree | 202672b825740fd3252b4f5a7c34c1af579e6821 | |
parent | e0da0f210c26738ef7c18809a507d46d6eb09610 (diff) | |
download | sonarqube-21ce21cce54dbeaa40ee9ff3d57d4256e9e5cc3d.tar.gz sonarqube-21ce21cce54dbeaa40ee9ff3d57d4256e9e5cc3d.zip |
Add support of WS api/ce/task to sonar-ws
-rw-r--r-- | sonar-ws/src/main/java/org/sonarqube/ws/client/ce/CeService.java | 13 | ||||
-rw-r--r-- | sonar-ws/src/test/java/org/sonarqube/ws/client/ce/CeServiceTest.java | 9 |
2 files changed, 22 insertions, 0 deletions
diff --git a/sonar-ws/src/main/java/org/sonarqube/ws/client/ce/CeService.java b/sonar-ws/src/main/java/org/sonarqube/ws/client/ce/CeService.java index a05d383c67d..1871cd800d9 100644 --- a/sonar-ws/src/main/java/org/sonarqube/ws/client/ce/CeService.java +++ b/sonar-ws/src/main/java/org/sonarqube/ws/client/ce/CeService.java @@ -20,6 +20,7 @@ package org.sonarqube.ws.client.ce; +import org.sonarqube.ws.WsCe; import org.sonarqube.ws.WsCe.ActivityResponse; import org.sonarqube.ws.WsCe.TaskTypesWsResponse; import org.sonarqube.ws.client.BaseService; @@ -33,6 +34,9 @@ import static org.sonarqube.ws.client.ce.CeWsParameters.PARAM_ONLY_CURRENTS; import static org.sonarqube.ws.client.ce.CeWsParameters.PARAM_STATUS; import static org.sonarqube.ws.client.ce.CeWsParameters.PARAM_TYPE; +/** + * Maps web service {@code api/ce} (Compute Engine). + */ public class CeService extends BaseService { public CeService(WsConnector wsConnector) { @@ -58,4 +62,13 @@ public class CeService extends BaseService { return call(new GetRequest(path("task_types")), TaskTypesWsResponse.parser()); } + /** + * Gets details of a Compute Engine task. + * + * @throws org.sonarqube.ws.client.HttpException if HTTP status code is not 2xx. + * @since 5.5 + */ + public WsCe.TaskResponse task(String id) { + return call(new GetRequest(path("task")).setParam("id", id), WsCe.TaskResponse.parser()); + } } diff --git a/sonar-ws/src/test/java/org/sonarqube/ws/client/ce/CeServiceTest.java b/sonar-ws/src/test/java/org/sonarqube/ws/client/ce/CeServiceTest.java index 1125072b933..51cc5293bc6 100644 --- a/sonar-ws/src/test/java/org/sonarqube/ws/client/ce/CeServiceTest.java +++ b/sonar-ws/src/test/java/org/sonarqube/ws/client/ce/CeServiceTest.java @@ -30,6 +30,7 @@ import org.sonarqube.ws.client.ServiceTester; import org.sonarqube.ws.client.WsConnector; import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.data.MapEntry.entry; import static org.mockito.Mockito.mock; import static org.sonarqube.ws.client.ce.CeWsParameters.PARAM_COMPONENT_ID; import static org.sonarqube.ws.client.ce.CeWsParameters.PARAM_MAX_EXECUTED_AT; @@ -94,4 +95,12 @@ public class CeServiceTest { assertThat(serviceTester.getGetParser()).isSameAs(WsCe.TaskTypesWsResponse.parser()); } + + @Test + public void task() { + underTest.task("task_id"); + + assertThat(serviceTester.getGetRequest().getPath()).isEqualTo("api/ce/task"); + assertThat(serviceTester.getGetRequest().getParams()).containsOnly(entry("id", "task_id")); + } } |