77import java .io .FileNotFoundException ;
88import java .io .IOException ;
99import java .util .ArrayList ;
10+ import java .util .List ;
1011
1112public class BacktoryFileStorageTest {
1213 private final BacktoryFileStorage backtoryFileStorage = new BacktoryFileStorage ();
@@ -21,49 +22,69 @@ public void initializingBacktoryFileStorage(){
2122
2223 /* ------------------------ Rename Test ------------------------ */
2324
25+ @ Test
26+ public void returnOKStatusCodeOnRenameCorrectCall () throws IOException {
27+ Assert .assertEquals (BacktoryResponse .OK_CREATED , backtoryFileStorage .upload ("directory/delete.txt" , "/" ).getStatusCode ());
28+ Assert .assertEquals (BacktoryResponse .OK , backtoryFileStorage .rename ("/delete.txt" , "mohsen.txt" ).getStatusCode ());
29+ Assert .assertEquals (BacktoryResponse .OK , backtoryFileStorage .delete ("/mohsen.txt" , true ).getStatusCode ());
30+ }
31+
2432 @ Test
2533 public void returnNotFoundErrorCodeWhenInvalidAddressFileGivenToRename () throws IOException {
2634 Assert .assertEquals (BacktoryResponse .NOT_FOUND , backtoryFileStorage .rename ("lajsdlkf" , "/UploadExample" ).getStatusCode ());
2735 }
2836
2937 @ Test
3038 public void returnNotFoundErrorCodeForTheSpecificMissingFileWhenInvalidAddressFileGivenToRenameFilesMultipleRequests () throws IOException {
39+ ArrayList <String > files = new ArrayList <>();
40+ ArrayList <String > paths = new ArrayList <>();
41+ files .add ("directory/delete.txt" );
42+ files .add ("directory/rename.txt" );
43+ paths .add ("/" );
44+ paths .add ("/" );
45+ List <BacktoryResponse <String >> uploadResponse = backtoryFileStorage .uploadFilesMultipleRequests (files , paths );
46+ Assert .assertEquals (BacktoryResponse .OK_CREATED , uploadResponse .get (0 ).getStatusCode ());
47+ Assert .assertEquals (BacktoryResponse .OK_CREATED , uploadResponse .get (1 ).getStatusCode ());
3148 ArrayList <String > pathToRename = new ArrayList <>();
3249 ArrayList <String > newFileName = new ArrayList <>();
33- pathToRename .add ("alsjdflk" );
34- pathToRename .add ("newfile.txt" );
35- pathToRename .add ("1234.png" );
36- newFileName .add ("1234" );
37- newFileName .add ("new.txt" );
38- newFileName .add ("123.png" );
50+ pathToRename .add (uploadResponse .get (0 ).getResponseList ().get (0 ));
51+ pathToRename .add ("ladjflajd" );
52+ newFileName .add ("newFile.txt" );
53+ newFileName .add ("123x" );
3954 Assert .assertEquals (BacktoryResponse .NOT_FOUND , backtoryFileStorage .renameFilesMultipleRequest (pathToRename , newFileName ).get (1 ).getStatusCode ());
40- ArrayList <String > correctPathToRename = new ArrayList <>();
41- ArrayList < String > correctNewFileName = new ArrayList <>( );
42- correctPathToRename .add ("new .txt" );
43- correctPathToRename . add ( "123.png" );
44- correctNewFileName .add ("newfile.txt" );
45- correctNewFileName .add ("1234.png" );
46- backtoryFileStorage .renameFilesMultipleRequest ( correctPathToRename , correctNewFileName );
55+ ArrayList <String > urls = new ArrayList <>();
56+ urls . add ( "/newFile.txt" );
57+ urls .add ("/rename .txt" );
58+ ArrayList < Boolean > forced = new ArrayList <>( );
59+ forced .add (true );
60+ forced .add (true );
61+ Assert . assertEquals ( BacktoryResponse . OK , backtoryFileStorage .deleteFiles ( urls , forced ). getStatusCode () );
4762 }
4863
4964 @ Test
5065 public void returnNotFoundErrorCodeForTheSpecificMissingFileWhenInvalidAddressFileGivenToRenameFilesSingleRequests () throws IOException {
66+ ArrayList <String > fileToUpload = new ArrayList <>();
67+ ArrayList <String > path = new ArrayList <>();
68+ fileToUpload .add ("directory/delete.txt" );
69+ fileToUpload .add ("directory/rename.txt" );
70+ path .add ("/" );
71+ path .add ("/" );
72+ BacktoryResponse uploadResponse = backtoryFileStorage .uploadFilesSingleRequest (fileToUpload , path );
73+ Assert .assertEquals (BacktoryResponse .OK_CREATED , uploadResponse .getStatusCode ());
5174 ArrayList <String > pathToRename = new ArrayList <>();
5275 ArrayList <String > newFileName = new ArrayList <>();
53- pathToRename .add ("newfile.txt" );
54- pathToRename .add ("alsjdflk" );
55- pathToRename .add ("1234.png" );
56- newFileName .add ("new.txt" );
57- newFileName .add ("1234" );
58- newFileName .add ("123.png" );
76+ pathToRename .add ((String ) uploadResponse .getResponseList ().get (0 ));
77+ pathToRename .add ("ladjflajd" );
78+ newFileName .add ("newFile.txt" );
79+ newFileName .add ("123x" );
5980 Assert .assertEquals (BacktoryResponse .NOT_FOUND , backtoryFileStorage .renameFilesSingleRequest (pathToRename , newFileName ).getStatusCode ());
60- ArrayList <String > correctPathToRename = new ArrayList <>();
61- ArrayList < String > correctNewFileName = new ArrayList <>( );
62- correctPathToRename .add ("new .txt" );
63- correctPathToRename . add ( "123.png" );
64- correctNewFileName .add ("newfile.txt" );
65- correctNewFileName .add ("1234.png" );
66- backtoryFileStorage .renameFilesMultipleRequest ( correctPathToRename , correctNewFileName );
81+ ArrayList <String > urls = new ArrayList <>();
82+ urls . add ( "/delete.txt" );
83+ urls .add ("/rename .txt" );
84+ ArrayList < Boolean > forced = new ArrayList <>( );
85+ forced .add (true );
86+ forced .add (true );
87+ Assert . assertEquals ( BacktoryResponse . OK , backtoryFileStorage .deleteFiles ( urls , forced ). getStatusCode () );
6788 }
6889
6990 @ Test
@@ -84,34 +105,44 @@ public void returnEXCEPTION_FAILEDStatusCodeWhenNewFileNameAlreadyExistInRename(
84105 public void returnEXCEPTION_FAILEDStatusCodeWhenNewFileNameAlreadyExistInRenameFilesSingleRequest () throws IOException {
85106 backtoryFileStorage .upload ("directory/delete.txt" , "/" );
86107 backtoryFileStorage .upload ("directory/rename.txt" , "/" );
108+ backtoryFileStorage .upload ("directory/mohsen.txt" , "/" );
87109 ArrayList <String > pathToRename = new ArrayList <>();
88110 ArrayList <String > newFileName = new ArrayList <>();
89111 pathToRename .add ("/delete.txt" );
90112 pathToRename .add ("/rename.txt" );
91- newFileName .add ("new .txt" );
113+ newFileName .add ("mohsen .txt" );
92114 newFileName .add ("correct.txt" );
93115 Assert .assertEquals (BacktoryResponse .EXCEPTION_FAILED , backtoryFileStorage .renameFilesSingleRequest (pathToRename , newFileName ).getStatusCode ());
94116 backtoryFileStorage .delete ("/delete.txt" , true );
95117 backtoryFileStorage .delete ("/rename.txt" , true );
118+ backtoryFileStorage .delete ("/mohsen.txt" , true );
96119 }
97120
98121 @ Test
99122 public void returnEXCEPTION_FAILEDStatusCodeForCorrectFileWhenNewFileNameAlreadyExistInRenameFilesMultipleRequests () throws IOException {
100123 backtoryFileStorage .upload ("directory/delete.txt" , "/" );
101124 backtoryFileStorage .upload ("directory/rename.txt" , "/" );
125+ backtoryFileStorage .upload ("directory/mohsen.txt" , "/" );
102126 ArrayList <String > pathToRename = new ArrayList <>();
103127 ArrayList <String > newFileName = new ArrayList <>();
104128 pathToRename .add ("/delete.txt" );
105129 pathToRename .add ("/rename.txt" );
106130 newFileName .add ("correct.txt" );
107- newFileName .add ("new .txt" );
131+ newFileName .add ("mohsen .txt" );
108132 Assert .assertEquals (BacktoryResponse .EXCEPTION_FAILED , backtoryFileStorage .renameFilesMultipleRequest (pathToRename , newFileName ).get (1 ).getStatusCode ());
109133 backtoryFileStorage .delete ("/correct.txt" , true );
110134 backtoryFileStorage .delete ("/rename.txt" , true );
135+ backtoryFileStorage .delete ("/mohsen.txt" , true );
111136 }
112137
113138 /* ------------------------ Upload Test ------------------------ */
114139
140+ @ Test
141+ public void returnOKStatusCodeOnUploadCorrectCall () throws IOException {
142+ Assert .assertEquals (BacktoryResponse .OK_CREATED ,backtoryFileStorage .upload ("directory/delete.txt" , "/" ).getStatusCode ());
143+ Assert .assertEquals (BacktoryResponse .OK , backtoryFileStorage .delete ("/delete.txt" , true ).getStatusCode ());
144+ }
145+
115146 @ Test (expected = FileNotFoundException .class )
116147 public void throwFileNotFoundExceptionWhenInvalidFileGiven () throws IOException {
117148 backtoryFileStorage .upload ("lkasjdflk" , "/" );
@@ -147,7 +178,7 @@ public void throwFileNotFoundExceptionWhenDirectoryDoesNotExistInUploadDirectori
147178 @ Test
148179 public void getOK_CREATEDStatusCodeWhenPathNotExistsInBucketInUpload () throws IOException {
149180 Assert .assertEquals (BacktoryResponse .OK_CREATED , backtoryFileStorage .upload ("directory/delete.txt" , "/123" ).getStatusCode ());
150- backtoryFileStorage .delete ("/123/" , true );
181+ Assert . assertEquals ( BacktoryResponse . OK , backtoryFileStorage .delete ("/123/" , true ). getStatusCode () );
151182 }
152183
153184 @ Test
@@ -157,10 +188,10 @@ public void getOK_CREATEDStatusCodeWhenPathNotExistsInBucketInUploadFiles() thro
157188 fileToUpload .add ("directory/delete.txt" );
158189 fileToUpload .add ("directory/delete.txt" );
159190 path .add ("/" );
160- path .add ("/123 " );
191+ path .add ("/1234 " );
161192 Assert .assertEquals (BacktoryResponse .OK_CREATED , backtoryFileStorage .uploadFilesMultipleRequests (fileToUpload , path ).get (1 ).getStatusCode ());
162193 backtoryFileStorage .delete ("/delete.txt" , true );
163- backtoryFileStorage .delete ("/123/delete.txt " , true );
194+ backtoryFileStorage .delete ("/1234/ " , true );
164195 }
165196
166197 /* ------------------------ Delete Test ------------------------ */
@@ -186,8 +217,8 @@ public void returnNotFoundErrorForTheSpecificFileInDeleteFilesWhenInvalidFileAdd
186217
187218 @ Test
188219 public void returnOKStatusCodeOnCreateDirectoryCorrectCall () throws IOException {
189- Assert .assertEquals (BacktoryResponse .OK_CREATED , backtoryFileStorage .createDirectory ("/createDir" ));
190- backtoryFileStorage .delete ("/createDir " , true );
220+ Assert .assertEquals (BacktoryResponse .OK_CREATED , backtoryFileStorage .createDirectory ("mohsen" ). getStatusCode ( ));
221+ Assert . assertEquals ( BacktoryResponse . OK , backtoryFileStorage .delete ("/mohsen/ " , true ). getStatusCode () );
191222 }
192223
193224}
0 commit comments