1+ package com .jaspersoft .jasperserver .jaxrs .client .apiadapters .settings ;
2+
3+ import com .jaspersoft .jasperserver .jaxrs .client .core .JerseyRequest ;
4+ import com .jaspersoft .jasperserver .jaxrs .client .core .SessionStorage ;
5+ import com .jaspersoft .jasperserver .jaxrs .client .core .exceptions .handling .DefaultErrorHandler ;
6+ import com .jaspersoft .jasperserver .jaxrs .client .core .operationresult .OperationResult ;
7+ import com .jaspersoft .jasperserver .jaxrs .client .dto .settings .*;
8+ import org .mockito .Mock ;
9+ import org .powermock .api .mockito .PowerMockito ;
10+ import org .powermock .core .classloader .annotations .PrepareForTest ;
11+ import org .powermock .modules .testng .PowerMockTestCase ;
12+ import org .testng .annotations .BeforeMethod ;
13+ import org .testng .annotations .Test ;
14+
15+ import javax .ws .rs .core .GenericType ;
16+ import java .util .List ;
17+ import java .util .Map ;
18+
19+ import static org .mockito .Matchers .any ;
20+ import static org .mockito .Matchers .eq ;
21+ import static org .mockito .Mockito .times ;
22+ import static org .mockito .MockitoAnnotations .initMocks ;
23+ import static org .powermock .api .mockito .PowerMockito .verifyStatic ;
24+ import static org .testng .Assert .assertNotNull ;
25+ import static org .testng .Assert .assertSame ;
26+
27+ /**
28+ * @author Tetiana Iefimenko
29+ */
30+ @ PrepareForTest ({JerseyRequest .class })
31+ public class SingleSettingsAdapterTest extends PowerMockTestCase {
32+
33+ @ Mock
34+ private SessionStorage sessionStorageMock ;
35+
36+ @ Mock
37+ private JerseyRequest <Map > mapJerseyRequest ;
38+ @ Mock
39+ private JerseyRequest <List > listJerseyRequest ;
40+ @ Mock
41+ private JerseyRequest <AwsSettings > awsSettingsJerseyRequest ;
42+ @ Mock
43+ private JerseyRequest <RequestSettings > requestSettingsJerseyRequest ;
44+ @ Mock
45+ private JerseyRequest <DataSourcePatternsSettings > dataSoursePattermsSettingsJerseyRequest ;
46+ @ Mock
47+ private JerseyRequest <DecimalFormatSymbolsSettings > decimalFormatSymbolsSettingsJerseyRequest ;
48+ @ Mock
49+ private JerseyRequest <DashboardSettings > dashboardSettingsJerseyRequest ;
50+ @ Mock
51+ private JerseyRequest <GlobalConfigurationSettings > globalConfigurationSettingsJerseyRequest ;
52+ @ Mock
53+ private JerseyRequest <DateTimeSettings > dateTimeSettingsJerseyRequest ;
54+ @ Mock
55+ private JerseyRequest <InputControlsSettings > inputControlsSettingsJerseyRequest ;
56+ @ Mock
57+ private JerseyRequest <List <UserTimeZone >> userTimeZonesListJerseyRequest ;
58+
59+
60+ @ Mock
61+ private OperationResult <Map > mapOperationResult ;
62+ @ Mock
63+ private OperationResult <List > listOperationResult ;
64+ @ Mock
65+ private OperationResult <AwsSettings > awsSettingsOperationResult ;
66+ @ Mock
67+ private OperationResult <RequestSettings > requestSettingsOperationResult ;
68+ @ Mock
69+ private OperationResult <DataSourcePatternsSettings > dataSourcePatternsSettingsOperationResult ;
70+ @ Mock
71+ private OperationResult <DecimalFormatSymbolsSettings > decimalFormatSymbolsSettingsOperationResult ;
72+ @ Mock
73+ private OperationResult <DashboardSettings > dashboardSettingsOperationResult ;
74+ @ Mock
75+ private OperationResult <GlobalConfigurationSettings > globalConfigurationSettingsOperationResult ;
76+ @ Mock
77+ private OperationResult <DateTimeSettings > dateTimeSettingsOperationResult ;
78+ @ Mock
79+ private OperationResult <InputControlsSettings > inputControlsSettingsOperationResult ;
80+ @ Mock
81+ private OperationResult <List <UserTimeZone >> userTimeZonesListOperationResult ;
82+
83+ private SettingsService service ;
84+
85+ @ BeforeMethod
86+ public void before () {
87+ initMocks (this );
88+ service = new SettingsService (sessionStorageMock );
89+ }
90+
91+ @ Test
92+ public void should_return_map_of_aws_settings_operationResult () throws Exception {
93+ //when
94+ PowerMockito .mockStatic (JerseyRequest .class );
95+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (Map .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ))).thenReturn (mapJerseyRequest );
96+ PowerMockito .doReturn (mapOperationResult ).when (mapJerseyRequest ).get ();
97+
98+ OperationResult <Map > settings = service .settings ().group ("awsSettings" , Map .class );
99+ //then
100+ assertSame (settings , mapOperationResult );
101+ verifyStatic (times (1 ));
102+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (Map .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ));
103+
104+
105+ }
106+
107+ @ Test
108+ public void should_return_awsSettings_operationResult () throws Exception {
109+ //when
110+ PowerMockito .mockStatic (JerseyRequest .class );
111+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (AwsSettings .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ))).thenReturn (awsSettingsJerseyRequest );
112+ PowerMockito .doReturn (awsSettingsOperationResult ).when (awsSettingsJerseyRequest ).get ();
113+
114+ OperationResult <AwsSettings > settings = service .settings ().group ("awsSettings" , AwsSettings .class );
115+ //then
116+
117+ assertSame (settings , awsSettingsOperationResult );
118+ verifyStatic (times (1 ));
119+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (AwsSettings .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ));
120+
121+ }
122+
123+ @ Test
124+ public void should_return_list_operationResult () throws Exception {
125+ //when
126+ PowerMockito .mockStatic (JerseyRequest .class );
127+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (List .class ), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ))).thenReturn (listJerseyRequest );
128+ PowerMockito .doReturn (listOperationResult ).when (listJerseyRequest ).get ();
129+
130+ OperationResult <List > settings = service .settings ().group ("userTimeZones" , List .class );
131+
132+ //then
133+ assertSame (settings , listOperationResult );
134+ verifyStatic (times (1 ));
135+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (List .class ), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ));
136+
137+ }
138+
139+ @ Test
140+ public void should_return_list_of_user_time_zones__operationResult () throws Exception {
141+ //when
142+ PowerMockito .mockStatic (JerseyRequest .class );
143+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (new GenericType <List <UserTimeZone >>() {
144+ }), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ))).thenReturn (userTimeZonesListJerseyRequest );
145+ PowerMockito .doReturn (userTimeZonesListOperationResult ).when (userTimeZonesListJerseyRequest ).get ();
146+
147+ OperationResult <List <UserTimeZone >> settings = service .settings ().group ("userTimeZones" , new GenericType <List <UserTimeZone >>() {
148+ });
149+
150+ //then
151+ assertSame (settings , userTimeZonesListOperationResult );
152+ verifyStatic (times (1 ));
153+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (new GenericType <List <UserTimeZone >>() {
154+ }), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ));
155+ }
156+
157+ @ Test
158+ public void should_return_request_settings_dto__operationResult_by_specified_method () throws Exception {
159+ //when
160+ PowerMockito .mockStatic (JerseyRequest .class );
161+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (RequestSettings .class ), eq (new String []{"/settings/request" }), any (DefaultErrorHandler .class ))).thenReturn (requestSettingsJerseyRequest );
162+ PowerMockito .doReturn (requestSettingsOperationResult ).when (requestSettingsJerseyRequest ).get ();
163+
164+ OperationResult <RequestSettings > settings = service .settings ().ofRequestGroup ();
165+
166+ //then
167+ assertSame (settings , requestSettingsOperationResult );
168+ verifyStatic (times (1 ));
169+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (RequestSettings .class ), eq (new String []{"/settings/request" }), any (DefaultErrorHandler .class ));
170+
171+ }
172+
173+ @ Test
174+ public void should_return_dataSourcePatterns_settings_dto__operationResult_by_specified_method () throws Exception {
175+ //when
176+ PowerMockito .mockStatic (JerseyRequest .class );
177+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DataSourcePatternsSettings .class ), eq (new String []{"/settings/dataSourcePatterns" }), any (DefaultErrorHandler .class ))).thenReturn (dataSoursePattermsSettingsJerseyRequest );
178+ PowerMockito .doReturn (dataSourcePatternsSettingsOperationResult ).when (dataSoursePattermsSettingsJerseyRequest ).get ();
179+
180+ OperationResult <DataSourcePatternsSettings > settings = service .settings ().ofDataSourcePatternsGroup ();
181+
182+ //then
183+ assertSame (settings , dataSourcePatternsSettingsOperationResult );
184+ verifyStatic (times (1 ));
185+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DataSourcePatternsSettings .class ), eq (new String []{"/settings/dataSourcePatterns" }), any (DefaultErrorHandler .class ));
186+
187+ }
188+
189+ @ Test
190+ public void should_return_userTimeZones_settings_dto__operationResult_by_specified_method () throws Exception {
191+ //when
192+ PowerMockito .mockStatic (JerseyRequest .class );
193+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (new GenericType <List <UserTimeZone >>() {
194+ }), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ))).thenReturn (userTimeZonesListJerseyRequest );
195+ PowerMockito .doReturn (userTimeZonesListOperationResult ).when (userTimeZonesListJerseyRequest ).get ();
196+
197+ OperationResult <List <UserTimeZone >> settings = service .settings ().ofUserTimeZonesGroup ();
198+
199+ //then
200+ assertSame (settings , userTimeZonesListOperationResult );
201+ verifyStatic (times (1 ));
202+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (new GenericType <List <UserTimeZone >>() {
203+ }), eq (new String []{"/settings/userTimeZones" }), any (DefaultErrorHandler .class ));
204+ }
205+
206+ @ Test
207+ public void should_return_aws_settings_dto__operationResult_by_specified_method () throws Exception {
208+ //when
209+ PowerMockito .mockStatic (JerseyRequest .class );
210+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (AwsSettings .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ))).thenReturn (awsSettingsJerseyRequest );
211+ PowerMockito .doReturn (awsSettingsOperationResult ).when (awsSettingsJerseyRequest ).get ();
212+
213+ OperationResult <AwsSettings > settings = service .settings ().ofAwsGroup ();
214+
215+ //then
216+ assertSame (settings , awsSettingsOperationResult );
217+ verifyStatic (times (1 ));
218+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (AwsSettings .class ), eq (new String []{"/settings/awsSettings" }), any (DefaultErrorHandler .class ));
219+ }
220+
221+
222+ @ Test
223+ public void should_return_decimalFormatSymbol_settings_dto__operationResult_by_specified_method () throws Exception {
224+ //when
225+ PowerMockito .mockStatic (JerseyRequest .class );
226+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DecimalFormatSymbolsSettings .class ), eq (new String []{"/settings/decimalFormatSymbols" }), any (DefaultErrorHandler .class ))).thenReturn (decimalFormatSymbolsSettingsJerseyRequest );
227+ PowerMockito .doReturn (decimalFormatSymbolsSettingsOperationResult ).when (decimalFormatSymbolsSettingsJerseyRequest ).get ();
228+
229+ OperationResult <DecimalFormatSymbolsSettings > settings = service .settings ().ofDecimalFormatSymbolsGroup ();
230+
231+ //then
232+ assertSame (settings , decimalFormatSymbolsSettingsOperationResult );
233+ verifyStatic (times (1 ));
234+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DecimalFormatSymbolsSettings .class ), eq (new String []{"/settings/decimalFormatSymbols" }), any (DefaultErrorHandler .class ));
235+ }
236+
237+ @ Test
238+ public void should_return_dashboard_settings_dto__operationResult_by_specified_method () throws Exception {
239+ //when
240+ PowerMockito .mockStatic (JerseyRequest .class );
241+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DashboardSettings .class ), eq (new String []{"/settings/dashboardSettings" }), any (DefaultErrorHandler .class ))).thenReturn (dashboardSettingsJerseyRequest );
242+ PowerMockito .doReturn (dashboardSettingsOperationResult ).when (dashboardSettingsJerseyRequest ).get ();
243+
244+ OperationResult <DashboardSettings > settings = service .settings ().ofDashboardGroup ();
245+
246+ //then
247+ assertSame (settings , dashboardSettingsOperationResult );
248+ verifyStatic (times (1 ));
249+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DashboardSettings .class ), eq (new String []{"/settings/dashboardSettings" }), any (DefaultErrorHandler .class ));
250+ }
251+
252+ @ Test
253+ public void should_return_globalConfiguration_settings_dto__operationResult_by_specified_method () throws Exception {
254+ //when
255+ PowerMockito .mockStatic (JerseyRequest .class );
256+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (GlobalConfigurationSettings .class ), eq (new String []{"/settings/globalConfiguration" }), any (DefaultErrorHandler .class ))).thenReturn (globalConfigurationSettingsJerseyRequest );
257+ PowerMockito .doReturn (globalConfigurationSettingsOperationResult ).when (globalConfigurationSettingsJerseyRequest ).get ();
258+
259+ OperationResult <GlobalConfigurationSettings > settings = service .settings ().ofGlobalConfigurationGroup ();
260+
261+ //then
262+ assertSame (settings , globalConfigurationSettingsOperationResult );
263+ verifyStatic (times (1 ));
264+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (GlobalConfigurationSettings .class ), eq (new String []{"/settings/globalConfiguration" }), any (DefaultErrorHandler .class ));
265+ }
266+
267+ @ Test
268+ public void should_return_dateTime_settings_dto__operationResult_by_specified_method () throws Exception {
269+ //when
270+ PowerMockito .mockStatic (JerseyRequest .class );
271+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DateTimeSettings .class ), eq (new String []{"/settings/dateTimeSettings" }), any (DefaultErrorHandler .class ))).thenReturn (dateTimeSettingsJerseyRequest );
272+ PowerMockito .doReturn (dateTimeSettingsOperationResult ).when (dateTimeSettingsJerseyRequest ).get ();
273+
274+ OperationResult <DateTimeSettings > settings = service .settings ().ofDateTimeGroup ();
275+
276+ //then
277+ assertSame (settings , dateTimeSettingsOperationResult );
278+ verifyStatic (times (1 ));
279+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (DateTimeSettings .class ), eq (new String []{"/settings/dateTimeSettings" }), any (DefaultErrorHandler .class ));
280+ }
281+
282+ @ Test
283+ public void should_return_inputControls_settings_dto__operationResult_by_specified_method () throws Exception {
284+ //when
285+ PowerMockito .mockStatic (JerseyRequest .class );
286+ PowerMockito .when (JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (InputControlsSettings .class ), eq (new String []{"/settings/inputControls" }), any (DefaultErrorHandler .class ))).thenReturn (inputControlsSettingsJerseyRequest );
287+ PowerMockito .doReturn (inputControlsSettingsOperationResult ).when (inputControlsSettingsJerseyRequest ).get ();
288+
289+ OperationResult <InputControlsSettings > settings = service .settings ().ofInputControlsGroup ();
290+
291+ //then
292+ assertSame (settings , inputControlsSettingsOperationResult );
293+ verifyStatic (times (1 ));
294+ JerseyRequest .buildRequest (eq (sessionStorageMock ), eq (InputControlsSettings .class ), eq (new String []{"/settings/inputControls" }), any (DefaultErrorHandler .class ));
295+ }
296+
297+
298+ }
0 commit comments