1313import java .io .InputStream ;
1414import java .nio .file .Files ;
1515import java .util .Collections ;
16+ import java .util .concurrent .CompletableFuture ;
1617
1718import org .junit .*;
1819import static org .junit .Assert .*;
@@ -92,6 +93,9 @@ public void testUploadDownloadDeleteMedia() throws Exception {
9293 ApiResponse <InputStream > downloadMediaApiResponse = controller .getMedia (ACCOUNT_ID , mediaId );
9394 assertEquals ("Response Code is not 200" , 200 , downloadMediaApiResponse .getStatusCode ());
9495
96+ CompletableFuture <ApiResponse <InputStream >> asyncDownloadMediaAPiResponse = controller .getMediaAsync (ACCOUNT_ID , mediaId );
97+ assertEquals ("Response Code is not 200" , 200 , asyncDownloadMediaAPiResponse .get ().getStatusCode ());
98+
9599 InputStream downloadMediaResponse = downloadMediaApiResponse .getResult ();
96100
97101 int bRead ;
@@ -103,7 +107,18 @@ public void testUploadDownloadDeleteMedia() throws Exception {
103107
104108 assertArrayEquals ("Media download not equal to media upload" , fileContents , responseContents );
105109
110+ InputStream asyncDownloadMediaResponse = asyncDownloadMediaAPiResponse .get ().getResult ();
111+
112+ int asyncBRead ;
113+ ByteArrayOutputStream asyncByteArrayOutputStream = new ByteArrayOutputStream ();
114+ while ((asyncBRead = asyncDownloadMediaResponse .read ()) != -1 ){
115+ asyncByteArrayOutputStream .write (asyncBRead );
116+ }
117+ byte [] asyncResponseContents = asyncByteArrayOutputStream .toByteArray ();
118+
119+ assertArrayEquals ("Media download not equal to media upload" , fileContents , asyncResponseContents );
120+
106121 ApiResponse <Void > deleteMediaApiResponse = controller .deleteMedia (ACCOUNT_ID , mediaId );
107122 assertEquals ("Response Code is not 204" , 204 , deleteMediaApiResponse .getStatusCode ());
108123 }
109- }
124+ }
0 commit comments