Skip to content

Commit 4fae10c

Browse files
Merge pull request #127 from TanyaEf/master
Updated loading configuration. Single file is used to configure client for integration tests.
2 parents 48f755e + 9c96157 commit 4fae10c

File tree

18 files changed

+545
-414
lines changed

18 files changed

+545
-414
lines changed

README.md

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,10 +134,29 @@ To do this you should create instance of `RestClientConfiguration`. It can be do
134134
```java
135135
RestClientConfiguration configuration = RestClientConfiguration.loadConfiguration("url.properties");
136136
```
137-
File should contain only URL which is entry point to your server's REST services and it is needed to URL corresponds to this pattern `{protocol}://{host}:{port}/{contextPath}`.
137+
Here is example of `configuration.properties` file:
138+
```java
139+
url=http://localhost:4444/jasperserver-pro
140+
connectionTimeout=100
141+
readTimeout=20
142+
jasperserverVersion=v6_0_0
143+
authenticationType=REST
144+
logHttp=true
145+
logHttpEntity=false
146+
restrictedHttpMethods=false
147+
contentMimeType=JSON
148+
acceptMimeType=JSON
149+
```
150+
File must contain at least URL which is entry point to your server's REST services and it is needed to URL corresponds to this pattern `{protocol}://{host}:{port}/{contextPath}`.
138151
####Creation of manual configuration
152+
To configure `JasperserverRestClient` manually, use the constructor of `RestClientConfiguration` and properties:
139153
```java
140154
RestClientConfiguration configuration = new RestClientConfiguration("http://localhost:8080/jasperserver");
155+
configuration.setAcceptMimeType(MimeType.JSON);
156+
configuration.setContentMimeType(MimeType.JSON);
157+
configuration.setJrsVersion(JRSVersion.v6_0_0);
158+
configuration.setLogHttp(true);
159+
configuration.setLogHttpEntity(true);
141160
```
142161
####HTTPS configuration
143162
<strong>To use HTTPS you need:</strong>
@@ -183,7 +202,7 @@ config.setAuthenticationType(AuthenticationType.SPRING);
183202
Or set authentication type in configuration file (for details, read section [Configuration](https://github.com/Jaspersoft/jrs-rest-java-client/blob/master/README.md#configuration)).
184203
Please notice, the basic authentication is not stateless and it is valid till method logout() is called or the application is restarted and you can not use this authentication type for Report Service, because all operations must be executed in the same session (for details, read section [Report services](https://github.com/Jaspersoft/jrs-rest-java-client/blob/master/README.md#report-services)).
185204
###Anonymous session
186-
For some Jasperserver services authentication is not required (for example, settings service and server info service), so you can use anonymous session:
205+
For some Jasperserver services authentication is not required (for example, settings service, bundles service or server info service), so you can use anonymous session:
187206
```java
188207
AnonymousSession session = client.getAnonymousSession();
189208
```
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.jaspersoft.jasperserver.jaxrs.client;
2+
3+
import com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient;
4+
import com.jaspersoft.jasperserver.jaxrs.client.core.RestClientConfiguration;
5+
import com.jaspersoft.jasperserver.jaxrs.client.core.Session;
6+
7+
/**
8+
* @author Tetiana Iefimenko
9+
*/
10+
public abstract class RestClientTestUtil {
11+
protected RestClientConfiguration configuration;
12+
protected JasperserverRestClient client;
13+
protected Session session;
14+
15+
protected void initClient() {
16+
configuration = RestClientConfiguration.loadConfiguration("test_config.properties");
17+
client = new JasperserverRestClient(configuration);
18+
}
19+
20+
protected void initSession() {
21+
session = client.authenticate("superuser", "superuser");
22+
}
23+
}

src/integration-test/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/attributes/ServerAttributesServiceIT.java

Lines changed: 9 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,26 @@
11
package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.attributes;
22

3-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.JRSVersion;
4-
import com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient;
5-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.MimeType;
6-
import com.jaspersoft.jasperserver.jaxrs.client.core.RestClientConfiguration;
7-
import com.jaspersoft.jasperserver.jaxrs.client.core.Session;
3+
import com.jaspersoft.jasperserver.jaxrs.client.RestClientTestUtil;
84
import com.jaspersoft.jasperserver.jaxrs.client.core.operationresult.NullEntityOperationResult;
95
import com.jaspersoft.jasperserver.jaxrs.client.core.operationresult.OperationResult;
106
import com.jaspersoft.jasperserver.jaxrs.client.dto.attributes.ServerAttribute;
117
import com.jaspersoft.jasperserver.jaxrs.client.dto.attributes.ServerAttributesListWrapper;
8+
import java.util.List;
129
import org.testng.Assert;
13-
import org.testng.annotations.AfterMethod;
14-
import org.testng.annotations.BeforeMethod;
10+
import org.testng.annotations.AfterClass;
11+
import org.testng.annotations.BeforeClass;
1512
import org.testng.annotations.Test;
1613

17-
import java.util.List;
18-
1914
import static java.util.Arrays.asList;
2015
import static org.hamcrest.core.IsInstanceOf.instanceOf;
2116

22-
public class ServerAttributesServiceIT {
17+
public class ServerAttributesServiceIT extends RestClientTestUtil {
2318

24-
private RestClientConfiguration config;
25-
private JasperserverRestClient client;
26-
private Session session;
2719

28-
@BeforeMethod
20+
@BeforeClass
2921
public void before() {
30-
config = new RestClientConfiguration("http://localhost:4444/jasperserver-pro");
31-
config.setAcceptMimeType(MimeType.JSON);
32-
config.setContentMimeType(MimeType.JSON);
33-
config.setJrsVersion(JRSVersion.v6_0_1);
34-
client = new JasperserverRestClient(config);
35-
session = client.authenticate("superuser", "superuser");
22+
initClient();
23+
initSession();
3624
}
3725

3826
@Test
@@ -128,11 +116,9 @@ public void should_delete_attribute() {
128116
Assert.assertTrue(instanceOf(NullEntityOperationResult.class).matches(entity));
129117
}
130118

131-
@AfterMethod
119+
@AfterClass
132120
public void after() {
133121
session.logout();
134-
client = null;
135-
config = null;
136122
session = null;
137123
}
138124
}
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,26 @@
11
package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.authority.organizations;
22

3-
import com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient;
4-
import com.jaspersoft.jasperserver.jaxrs.client.core.RestClientConfiguration;
5-
import com.jaspersoft.jasperserver.jaxrs.client.core.Session;
6-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.JRSVersion;
7-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.MimeType;
3+
import com.jaspersoft.jasperserver.jaxrs.client.RestClientTestUtil;
84
import com.jaspersoft.jasperserver.jaxrs.client.core.operationresult.OperationResult;
95
import com.jaspersoft.jasperserver.jaxrs.client.dto.attributes.ClientTenantAttribute;
106
import com.jaspersoft.jasperserver.jaxrs.client.dto.attributes.TenantAttributesListWrapper;
117
import java.util.Arrays;
12-
import org.testng.annotations.AfterMethod;
13-
import org.testng.annotations.BeforeMethod;
8+
import org.testng.annotations.AfterClass;
9+
import org.testng.annotations.BeforeClass;
1410
import org.testng.annotations.Test;
1511

1612
import static org.testng.AssertJUnit.assertNotNull;
1713

1814
/**
1915
* @author Tetiana Iefimenko
2016
*/
21-
public class OrganizationsServiceIT {
17+
public class OrganizationsServiceIT extends RestClientTestUtil {
2218

2319

24-
private RestClientConfiguration config;
25-
private JasperserverRestClient client;
26-
private Session session;
27-
28-
@BeforeMethod
20+
@BeforeClass
2921
public void before() {
30-
config = new RestClientConfiguration("http://localhost:4444/jasperserver-pro");
31-
config.setAcceptMimeType(MimeType.JSON);
32-
config.setContentMimeType(MimeType.JSON);
33-
config.setJrsVersion(JRSVersion.v6_0_1);
34-
config.setLogHttp(true);
35-
config.setLogHttpEntity(true);
36-
client = new JasperserverRestClient(config);
37-
38-
session = client.authenticate("superuser", "superuser");
22+
initClient();
23+
initSession();
3924
}
4025

4126

@@ -62,21 +47,22 @@ public void should_create_tenant_attributes() {
6247
public void should_return_tenant_attributes() {
6348

6449

65-
OperationResult<TenantAttributesListWrapper> result3 = session
50+
OperationResult<TenantAttributesListWrapper> operationResult = session
6651
.organizationsService()
6752
.organization("myOrg1")
6853
.attributes()
6954
.get();
7055

71-
TenantAttributesListWrapper result = result3.getEntity();
72-
assertNotNull(result3);
73-
assertNotNull(result);
56+
TenantAttributesListWrapper tenantAttributesListWrapper= operationResult.getEntity();
57+
assertNotNull(operationResult);
58+
assertNotNull(tenantAttributesListWrapper);
7459

7560
}
7661

77-
@AfterMethod
62+
@AfterClass
7863
public void after() {
7964
session.logout();
65+
session = null;
8066
}
8167

8268
}

src/integration-test/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/authority/users/UsersServiceIT.java

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,29 @@
11
package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.authority.users;
22

33
import com.jaspersoft.jasperserver.dto.authority.ClientUser;
4-
import com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient;
5-
import com.jaspersoft.jasperserver.jaxrs.client.core.RestClientConfiguration;
6-
import com.jaspersoft.jasperserver.jaxrs.client.core.Session;
7-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.JRSVersion;
8-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.MimeType;
4+
import com.jaspersoft.jasperserver.jaxrs.client.RestClientTestUtil;
95
import java.util.List;
106
import org.testng.Assert;
11-
import org.testng.annotations.AfterMethod;
12-
import org.testng.annotations.BeforeMethod;
7+
import org.testng.annotations.AfterClass;
8+
import org.testng.annotations.BeforeClass;
139
import org.testng.annotations.Test;
1410

1511
/**
1612
* @author Alexander Krasnyanskiy
1713
*/
18-
public class UsersServiceIT {
14+
public class UsersServiceIT extends RestClientTestUtil {
1915

20-
private RestClientConfiguration config;
21-
private JasperserverRestClient client;
22-
private Session session;
2316

24-
@BeforeMethod
17+
@BeforeClass
2518
public void before() {
26-
config = new RestClientConfiguration("http://localhost:4444/jasperserver-pro");
27-
config.setAcceptMimeType(MimeType.JSON);
28-
config.setContentMimeType(MimeType.JSON);
29-
config.setJrsVersion(JRSVersion.v6_0_1);
30-
config.setLogHttp(true);
31-
client = new JasperserverRestClient(config);
32-
33-
session = client.authenticate("superuser", "superuser");
19+
initClient();
20+
initSession();
3421
}
3522

3623
@Test
3724
public void shouldReturnAllUsers() {
3825

39-
4026
//When
41-
4227
List<ClientUser> users = session
4328
.usersService()
4429
.allUsers()
@@ -66,7 +51,7 @@ public void should_return_list_users_by_role() {
6651
Assert.assertTrue(users.size() > 3);
6752
}
6853

69-
@AfterMethod
54+
@AfterClass
7055
public void after() {
7156
session.logout();
7257
session = null;

src/integration-test/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/bundles/BundlesServiceIT.java

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.bundles;
22

3+
import com.jaspersoft.jasperserver.jaxrs.client.RestClientTestUtil;
34
import com.jaspersoft.jasperserver.jaxrs.client.core.AnonymousSession;
4-
import com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient;
5-
import com.jaspersoft.jasperserver.jaxrs.client.core.RestClientConfiguration;
6-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.JRSVersion;
7-
import com.jaspersoft.jasperserver.jaxrs.client.core.enums.MimeType;
85
import java.util.Locale;
96
import java.util.Map;
10-
import org.testng.annotations.BeforeMethod;
7+
import org.testng.annotations.BeforeClass;
118
import org.testng.annotations.Test;
129

1310
import static junit.framework.Assert.assertFalse;
@@ -18,24 +15,21 @@
1815
* @author Tetiana Iefimenko
1916
*/
2017

21-
public class BundlesServiceIT {
18+
public class BundlesServiceIT extends RestClientTestUtil {
2219

23-
private RestClientConfiguration config;
24-
private JasperserverRestClient client;
2520
private AnonymousSession session;
2621

27-
@BeforeMethod
28-
public void before() {
29-
config = new RestClientConfiguration("http://localhost:4444/jasperserver-pro");
30-
config.setAcceptMimeType(MimeType.JSON);
31-
config.setContentMimeType(MimeType.JSON);
32-
config.setJrsVersion(JRSVersion.v6_1_0);
33-
config.setLogHttp(true);
34-
config.setLogHttpEntity(true);
35-
client = new JasperserverRestClient(config);
22+
@Override
23+
public void initSession() {
3624
session = client.getAnonymousSession();
3725
}
3826

27+
@BeforeClass
28+
public void before() {
29+
initClient();
30+
initSession();
31+
}
32+
3933
@Test
4034
public void should_return_all_bundles_for_default_locale() {
4135

0 commit comments

Comments
 (0)