poi-185 пре 2 година
родитељ
комит
ac92af0524

+ 7 - 4
untitled/src/main/java/FileConverter.java

@@ -3,12 +3,11 @@ import java.util.Scanner;
 
 public class FileConverter {
 
-    public static String covertFileToUpperCase(String fileFullPath) throws IOException{
+    public static void convertFileToUpperCase(String fileFullPath) throws IOException{
         String content = readFile(fileFullPath);
         content = toUpperCase(content);
-        return content;
+        writeToFile(content, fileFullPath);
     }
-
     public static String readFile(String fileFullPath) throws IOException{
         StringBuilder stringBuilder = new StringBuilder();
         File file = new File(fileFullPath);
@@ -21,9 +20,13 @@ public class FileConverter {
         reader.close();
         return stringBuilder.toString();
     }
-
     public static String toUpperCase(String content){
         return content.toUpperCase();
     }
+    private static void writeToFile(String content, String fileFullPath) throws IOException {
+        FileWriter fileWriter = new FileWriter(fileFullPath, false);
+        fileWriter.write(content);
+        fileWriter.close();
+    }
 
 }

+ 43 - 5
untitled/src/test/java/FileConverterTest.java

@@ -15,16 +15,54 @@ public class FileConverterTest {
         assertEquals(basic,content);
         return content;
     }
+    private void checkUpperCase (String content) throws IOException {
+        String basic = "ABCDFG";
+        assertEquals(basic,FileConverter.toUpperCase(content));
+    }
+    private void checkIfFileIsUpperCase(String path) throws IOException {
+        File file = new File(path);
+        FileReader fileReader = new FileReader(file);
+        BufferedReader bufferedReader = new BufferedReader(fileReader);
+        int charRead = 0;
+        while ((charRead = bufferedReader.read()) != -1) {
+            char character = (char) charRead;
+            if (Character.isLetter(character))
+                assertTrue(Character.isUpperCase(character));
+        }
+    }
     @Test
     void testOnlyCharacters() throws IOException {
         String content  = basicTest("file.txt");
         checkUpperCase(content);
     }
-
-    private void checkUpperCase (String content) throws IOException {
+    @Test
+    void testReadAndConvert() throws IOException {
         String basic = "ABCDFG";
-        assertEquals(basic,FileConverter.toUpperCase(content));
-    }
-
+        String file_name = "file.txt";
+        String path = path_to_test_files + file_name;
+        assertEquals(basic,FileConverter.toUpperCase(FileConverter.readFile(path)));
 
+        basic = "34A$21B37&#!MALEZNAKI";
+        file_name = "file_special_characters.txt";
+        path = path_to_test_files + file_name;
+        assertEquals(basic,FileConverter.toUpperCase(FileConverter.readFile(path)));
+    }
+    @Test
+    void testFileConverter() throws IOException {
+        String file_name = "file.txt";
+        String path = path_to_test_files + file_name;
+        FileConverter.convertFileToUpperCase(path);
+        checkIfFileIsUpperCase(path);
+    }
+    private static void writeToFile(String filePath, String content) throws IOException {
+        FileWriter writerObj = new FileWriter(filePath, false);
+        writerObj.write(content);
+        writerObj.close();
+    }
+    @AfterAll
+    static void resetTestFiles() throws IOException {
+        writeToFile(path_to_test_files + "file.txt", "abcdfg");
+        writeToFile(path_to_test_files + "file_special_characters.txt", "34a$21b37&#!maleznaki");
+        writeToFile(path_to_test_files + "file_to_write.txt", "");
+    }
 }