33import com .jaspersoft .jasperserver .jaxrs .client .core .JerseyRequest ;
44import com .jaspersoft .jasperserver .jaxrs .client .core .RequestBuilder ;
55import com .jaspersoft .jasperserver .jaxrs .client .core .SessionStorage ;
6+ import com .jaspersoft .jasperserver .jaxrs .client .core .exceptions .MandatoryParameterNotFoundException ;
67import com .jaspersoft .jasperserver .jaxrs .client .core .exceptions .handling .DefaultErrorHandler ;
78import com .jaspersoft .jasperserver .jaxrs .client .core .operationresult .OperationResult ;
89import java .io .InputStream ;
1718import org .testng .annotations .Test ;
1819
1920import static com .jaspersoft .jasperserver .jaxrs .client .core .JerseyRequest .buildRequest ;
21+ import static org .junit .Assert .assertNull ;
2022import static org .mockito .Matchers .any ;
2123import static org .mockito .Matchers .eq ;
2224import static org .mockito .Mockito .reset ;
@@ -74,12 +76,56 @@ public void should_set_report_uri() {
7476 // When
7577 SingleThumbnailAdapter retrieved = thumbnailAdapter .report ("/public/Samples/Reports/07g.RevenueDetailReport" );
7678
79+ // Then
80+ String reportName = (String ) Whitebox .getInternalState (retrieved , "reportName" );
81+ assertEquals (reportName , "/public/Samples/Reports/07g.RevenueDetailReport" );
82+ } @ Test
83+ /**
84+ * for {@link SingleThumbnailAdapter#report(String)}
85+ */
86+ public void should_not_set_null_report_uri () {
87+ // Given
88+ SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter (sessionStorageMock );
89+
90+ // When
91+ SingleThumbnailAdapter retrieved = thumbnailAdapter .report (null );
92+
93+ // Then
94+ assertNull (Whitebox .getInternalState (retrieved , "reportName" ));
95+ }
96+
97+ @ Test
98+ /**
99+ * for {@link SingleThumbnailAdapter#report(String)}
100+ */
101+ public void should_not_set_empty_report_uri () {
102+ // Given
103+ SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter (sessionStorageMock );
104+
105+ // When
106+ SingleThumbnailAdapter retrieved = thumbnailAdapter .report ("" );
107+
108+ // Then
109+ assertNull (Whitebox .getInternalState (retrieved , "reportName" ));
110+ }
111+
112+ @ Test
113+ /**
114+ * for {@link SingleThumbnailAdapter#report(String)}
115+ */
116+ public void should_set_report_uri_with_default_allowed () {
117+ // Given
118+ SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter (sessionStorageMock );
119+
120+ // When
121+ SingleThumbnailAdapter retrieved = thumbnailAdapter .defaultAllowed (true ).report ("/public/Samples/Reports/07g.RevenueDetailReport" );
122+
77123 // Then
78124 MultivaluedHashMap <String , String > params =
79- (MultivaluedHashMap <String , String >) Whitebox .getInternalState (thumbnailAdapter , "params" );
80- List <String > list = params .get ("uri " );
125+ (MultivaluedHashMap <String , String >) Whitebox .getInternalState (retrieved , "params" );
126+ List <String > list = params .get ("defaultAllowed " );
81127 assertSame (retrieved , thumbnailAdapter );
82- assertEquals (list .get (0 ), "/public/Samples/Reports/07g.RevenueDetailReport " );
128+ assertEquals (list .get (0 ), "true " );
83129 }
84130
85131 @ Test
@@ -115,20 +161,20 @@ public void should_return_proper_operation_result() {
115161 eq (InputStream .class ),
116162 eq (new String []{"/thumbnails" , "/public/Samples/Reports/07g.RevenueDetailReport" }),
117163 any (DefaultErrorHandler .class ))).thenReturn (jerseyRequestMock );
118- when (jerseyRequestMock .setAccept ("image/jpeg" )).thenReturn (requestBuilderMock );
119- when (requestBuilderMock .get ()).thenReturn (operationResultMock );
164+ when (jerseyRequestMock .setAccept ("image/jpeg" )).thenReturn (jerseyRequestMock );
165+ when (jerseyRequestMock .get ()).thenReturn (operationResultMock );
120166 SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter (sessionStorageMock );
121167 thumbnailAdapter .report ("/public/Samples/Reports/07g.RevenueDetailReport" );
122168
123- // When /
169+ // When
124170 OperationResult <InputStream > retrieved = thumbnailAdapter .get ();
125171
126172
127- // Then /
173+ // Then
128174 assertNotNull (retrieved );
129175 assertSame (retrieved , operationResultMock );
130176 verify (jerseyRequestMock ).setAccept (eq ("image/jpeg" ));
131- verify (requestBuilderMock ).get ();
177+ verify (jerseyRequestMock ).get ();
132178 verifyStatic (times (1 ));
133179 buildRequest (
134180 eq (sessionStorageMock ),
@@ -138,6 +184,27 @@ public void should_return_proper_operation_result() {
138184
139185 }
140186
187+
188+ @ Test (expectedExceptions = MandatoryParameterNotFoundException .class )
189+ /**
190+ * for {@link SingleThumbnailAdapter#get()}
191+ */
192+ public void should_throw_exception () {
193+
194+ // Given
195+ SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter (sessionStorageMock );
196+ thumbnailAdapter .report (null );
197+
198+ // When
199+ OperationResult <InputStream > retrieved = thumbnailAdapter .get ();
200+
201+
202+ // Then
203+ //An exception should be thrown
204+
205+
206+ }
207+
141208 @ AfterMethod
142209 public void after () {
143210 reset (sessionStorageMock , jerseyRequestMock , requestBuilderMock , operationResultMock );
0 commit comments