diff options
author | Simon Brandhof <simon.brandhof@gmail.com> | 2013-05-31 10:14:40 +0200 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@gmail.com> | 2013-05-31 10:14:40 +0200 |
commit | 942d823359234eb9cdd9e42c33235d2a5e96375b (patch) | |
tree | cb6e262f52a1cb8d23b7c9632e766f842de424f7 /sonar-ws-client/src/test | |
parent | 4f4091d09b31b18c3053518c84dff26e3a6d48ce (diff) | |
download | sonarqube-942d823359234eb9cdd9e42c33235d2a5e96375b.tar.gz sonarqube-942d823359234eb9cdd9e42c33235d2a5e96375b.zip |
Support HTTP proxy in new ws-client
Diffstat (limited to 'sonar-ws-client/src/test')
5 files changed, 77 insertions, 24 deletions
diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/SonarClientTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/SonarClientTest.java index 9c9acbbbd55..8216d88767e 100644 --- a/sonar-ws-client/src/test/java/org/sonar/wsclient/SonarClientTest.java +++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/SonarClientTest.java @@ -30,7 +30,7 @@ import static org.fest.assertions.Fail.fail; public class SonarClientTest { @Test public void should_build_clients() { - SonarClient client = SonarClient.builder().url("http://localhost:9000").build(); + SonarClient client = SonarClient.create("http://localhost:9000"); assertThat(client.issueClient()).isNotNull().isInstanceOf(DefaultIssueClient.class); assertThat(client.actionPlanClient()).isNotNull().isInstanceOf(DefaultActionPlanClient.class); assertThat(client.userClient()).isNotNull().isInstanceOf(DefaultUserClient.class); @@ -49,10 +49,47 @@ public class SonarClientTest { @Test public void url_should_not_be_empty() { try { - SonarClient.builder().url("").build(); + SonarClient.create(""); fail(); } catch (IllegalStateException e) { assertThat(e).hasMessage("Server URL must be set"); } } + + @Test + public void test_default_configuration() throws Exception { + SonarClient client = SonarClient.create("http://localhost:9000"); + assertThat(client.requestFactory.getBaseUrl()).isEqualTo("http://localhost:9000"); + assertThat(client.requestFactory.getLogin()).isNull(); + assertThat(client.requestFactory.getPassword()).isNull(); + assertThat(client.requestFactory.getConnectTimeoutInMilliseconds()).isEqualTo(SonarClient.DEFAULT_CONNECT_TIMEOUT_MILLISECONDS); + assertThat(client.requestFactory.getReadTimeoutInMilliseconds()).isEqualTo(SonarClient.DEFAULT_READ_TIMEOUT_MILLISECONDS); + assertThat(client.requestFactory.getProxyHost()).isNull(); + assertThat(client.requestFactory.getProxyPort()).isEqualTo(0); + assertThat(client.requestFactory.getProxyLogin()).isNull(); + assertThat(client.requestFactory.getProxyPassword()).isNull(); + + } + + @Test + public void test_custom_configuration() throws Exception { + SonarClient client = SonarClient.builder().url("http://localhost:9000") + .login("eric") + .password("pass") + .connectTimeoutMilliseconds(12345) + .readTimeoutMilliseconds(6789) + .proxy("localhost", 2052) + .proxyLogin("proxyLogin") + .proxyPassword("proxyPass") + .build(); + assertThat(client.requestFactory.getBaseUrl()).isEqualTo("http://localhost:9000"); + assertThat(client.requestFactory.getLogin()).isEqualTo("eric"); + assertThat(client.requestFactory.getPassword()).isEqualTo("pass"); + assertThat(client.requestFactory.getConnectTimeoutInMilliseconds()).isEqualTo(12345); + assertThat(client.requestFactory.getReadTimeoutInMilliseconds()).isEqualTo(6789); + assertThat(client.requestFactory.getProxyHost()).isEqualTo("localhost"); + assertThat(client.requestFactory.getProxyPort()).isEqualTo(2052); + assertThat(client.requestFactory.getProxyLogin()).isEqualTo("proxyLogin"); + assertThat(client.requestFactory.getProxyPassword()).isEqualTo("proxyPass"); + } } diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/internal/HttpRequestFactoryTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/internal/HttpRequestFactoryTest.java index bcba002682f..43575e83b5f 100644 --- a/sonar-ws-client/src/test/java/org/sonar/wsclient/internal/HttpRequestFactoryTest.java +++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/internal/HttpRequestFactoryTest.java @@ -36,7 +36,7 @@ public class HttpRequestFactoryTest { public void test_get() { httpServer.doReturnStatus(200).doReturnBody("list of issues"); - HttpRequestFactory factory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory factory = new HttpRequestFactory(httpServer.url()); HttpRequest request = factory.get("/api/issues", Collections.<String, Object>emptyMap()); assertThat(request.method()).isEqualTo("GET"); @@ -49,7 +49,7 @@ public class HttpRequestFactoryTest { public void test_post() { httpServer.doReturnStatus(200); - HttpRequestFactory factory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory factory = new HttpRequestFactory(httpServer.url()); HttpRequest request = factory.post("/api/issues/change", Collections.<String, Object>emptyMap()); assertThat(request.method()).isEqualTo("POST"); @@ -61,7 +61,7 @@ public class HttpRequestFactoryTest { public void test_authentication() { httpServer.doReturnStatus(200).doReturnBody("list of issues"); - HttpRequestFactory factory = new HttpRequestFactory(httpServer.url(), "karadoc", "legrascestlavie"); + HttpRequestFactory factory = new HttpRequestFactory(httpServer.url()).setLogin("karadoc").setPassword("legrascestlavie"); HttpRequest request = factory.get("/api/issues", Collections.<String, Object>emptyMap()); assertThat(request.body()).isEqualTo("list of issues"); @@ -69,4 +69,20 @@ public class HttpRequestFactoryTest { assertThat(httpServer.requestedPath()).isEqualTo("/api/issues"); assertThat(httpServer.requestHeaders().get("Authorization")).isEqualTo("Basic a2FyYWRvYzpsZWdyYXNjZXN0bGF2aWU="); } + + @Test + public void test_proxy() throws Exception { + HttpRequestFactory factory = new HttpRequestFactory(httpServer.url()).setProxyHost("localhost").setProxyPort(5020); + HttpRequest request = factory.get("/api/issues", Collections.<String, Object>emptyMap()); + // it's not possible to check that the proxy is correctly configured + } + + @Test + public void test_proxy_credentials() throws Exception { + HttpRequestFactory factory = new HttpRequestFactory(httpServer.url()) + .setProxyHost("localhost").setProxyPort(5020) + .setProxyLogin("john").setProxyPassword("smith"); + HttpRequest request = factory.get("/api/issues", Collections.<String, Object>emptyMap()); + // it's not possible to check that the proxy is correctly configured + } } diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultActionPlanClientTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultActionPlanClientTest.java index a9b29aa8370..d6597c2e918 100644 --- a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultActionPlanClientTest.java +++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultActionPlanClientTest.java @@ -37,7 +37,7 @@ public class DefaultActionPlanClientTest { @Test public void should_find_action_plans() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"actionPlans\": [{\"key\": \"382f6f2e-ad9d-424a-b973-9b065e04348a\",\n" + "\"name\": \"Long term\",\n" + "\"status\": \"CLOSED\",\n" + @@ -69,7 +69,7 @@ public class DefaultActionPlanClientTest { @Test public void should_create_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"actionPlan\": {\"key\": \"382f6f2e-ad9d-424a-b973-9b065e04348a\"}}"); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); @@ -81,7 +81,7 @@ public class DefaultActionPlanClientTest { @Test public void should_update_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"actionPlan\": {\"key\": \"382f6f2e-ad9d-424a-b973-9b065e04348a\"}}"); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); @@ -93,7 +93,7 @@ public class DefaultActionPlanClientTest { @Test public void should_delete_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); client.delete("382f6f2e-ad9d-424a-b973-9b065e04348a"); @@ -103,7 +103,7 @@ public class DefaultActionPlanClientTest { @Test public void should_fail_to_delete_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnStatus(500); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); @@ -117,7 +117,7 @@ public class DefaultActionPlanClientTest { @Test public void should_open_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"actionPlan\": {\"key\": \"382f6f2e-ad9d-424a-b973-9b065e04348a\"}}"); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); @@ -129,7 +129,7 @@ public class DefaultActionPlanClientTest { @Test public void should_close_action_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"actionPlan\": {\"key\": \"382f6f2e-ad9d-424a-b973-9b065e04348a\"}}"); ActionPlanClient client = new DefaultActionPlanClient(requestFactory); diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultIssueClientTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultIssueClientTest.java index ae0d4c587ba..41118a61ff9 100644 --- a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultIssueClientTest.java +++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/DefaultIssueClientTest.java @@ -36,7 +36,7 @@ public class DefaultIssueClientTest { @Test public void should_find_issues() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issues\": [{\"key\": \"ABCDE\"}]}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -50,7 +50,7 @@ public class DefaultIssueClientTest { @Test public void should_fail_to_find_issues() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnStatus(500); IssueClient client = new DefaultIssueClient(requestFactory); @@ -64,7 +64,7 @@ public class DefaultIssueClientTest { @Test public void should_set_severity() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -76,7 +76,7 @@ public class DefaultIssueClientTest { @Test public void should_assign() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -88,7 +88,7 @@ public class DefaultIssueClientTest { @Test public void should_unassign() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -100,7 +100,7 @@ public class DefaultIssueClientTest { @Test public void should_plan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -112,7 +112,7 @@ public class DefaultIssueClientTest { @Test public void should_unplan() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -124,7 +124,7 @@ public class DefaultIssueClientTest { @Test public void should_create_issue() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -136,7 +136,7 @@ public class DefaultIssueClientTest { @Test public void should_get_transitions() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\n" + " \"transitions\": [\n" + " \"resolve\",\n" + @@ -154,7 +154,7 @@ public class DefaultIssueClientTest { @Test public void should_apply_transition() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"issue\": {\"key\": \"ABCDE\"}}"); IssueClient client = new DefaultIssueClient(requestFactory); @@ -166,7 +166,7 @@ public class DefaultIssueClientTest { @Test public void should_add_comment() throws Exception { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody(IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/DefaultIssueClientTest/add_comment_result.json"))); IssueClient client = new DefaultIssueClient(requestFactory); diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/user/DefaultUserClientTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/user/DefaultUserClientTest.java index b559b693dfc..716802c6fde 100644 --- a/sonar-ws-client/src/test/java/org/sonar/wsclient/user/DefaultUserClientTest.java +++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/user/DefaultUserClientTest.java @@ -34,7 +34,7 @@ public class DefaultUserClientTest { @Test public void should_find_issues() { - HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url(), null, null); + HttpRequestFactory requestFactory = new HttpRequestFactory(httpServer.url()); httpServer.doReturnBody("{\"users\": [{\"login\": \"simon\", \"name\": \"Simon\", \"active\": true}]}"); UserClient client = new DefaultUserClient(requestFactory); |