From e3a7f339f2efb6d473a709e184ed9b23c23e9389 Mon Sep 17 00:00:00 2001 From: Anthony Berg Date: Thu, 17 Oct 2024 18:24:52 +0200 Subject: [PATCH] feat: add path argument for ReadFile --- app/src/test/java/ReadFileTest.java | 30 +++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/app/src/test/java/ReadFileTest.java b/app/src/test/java/ReadFileTest.java index 61b97c0..4dbb517 100644 --- a/app/src/test/java/ReadFileTest.java +++ b/app/src/test/java/ReadFileTest.java @@ -6,8 +6,11 @@ import org.junit.jupiter.api.io.TempDir; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrowsExactly; @DisplayName("ReadFile class functions test") class ReadFileTest { @@ -22,28 +25,31 @@ class ReadFileTest { @Test @DisplayName("Empty file name in `filename` parameter") void emptyFileName() { - assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open("")); + assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open(Path.of(""))); } @Test @DisplayName("Empty file name in `filename` parameter") void invalidFileExtension() throws IOException { // Create files with wrong file extensions - Files.createFile(tempDir.resolve("emails.csv")); - Files.createFile(tempDir.resolve("emails")); - Files.createFile(tempDir.resolve("emails.xlsx")); - Files.createFile(tempDir.resolve("emails.db")); + Path csv = Files.createFile(tempDir.resolve("emails.csv")); + Path empty = Files.createFile(tempDir.resolve("emails")); + Path xlsx = Files.createFile(tempDir.resolve("emails.xlsx")); + Path db = Files.createFile(tempDir.resolve("emails.db")); - assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open("emails.csv")); - assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open("emails")); - assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open("emails.xlsx")); - assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open("emails.db")); + assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open(csv)); + assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open(empty)); + assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open(xlsx)); + assertThrowsExactly(IllegalArgumentException.class, () -> ReadFile.open(db)); } @Test @DisplayName("Trying to open non-existent file") - void nonExistentFile() { - assertThrowsExactly(RuntimeException.class, () -> ReadFile.open("doesNotExist.txt")); + void nonExistentFile() throws IOException { + Path nonExistent = Files.createFile(tempDir.resolve("doesNotExist.txt")); + Files.delete(nonExistent); + + assertThrowsExactly(RuntimeException.class, () -> ReadFile.open(nonExistent)); } } } \ No newline at end of file