From 7c2e292da2e5e8a5561af453d1ad13cf3082d7eb Mon Sep 17 00:00:00 2001 From: RatzzFatzz Date: Sat, 23 Nov 2019 16:22:14 +0100 Subject: [PATCH] [IMPL] mkvtoolproptest --- src/main/java/Main.java | 2 - src/main/java/config/MKVToolProperties.java | 6 +- .../java/config/MKVToolPropertiesTest.java | 72 +++++++++++++------ 3 files changed, 56 insertions(+), 24 deletions(-) diff --git a/src/main/java/Main.java b/src/main/java/Main.java index c2f130a..4b72a3c 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -6,6 +6,4 @@ public class Main { public static void main(String[] args) { MKVToolProperties.getInstance().defineMKVToolNixPath(); } - - } diff --git a/src/main/java/config/MKVToolProperties.java b/src/main/java/config/MKVToolProperties.java index 0f515c8..45acb5c 100644 --- a/src/main/java/config/MKVToolProperties.java +++ b/src/main/java/config/MKVToolProperties.java @@ -1,5 +1,6 @@ package config; +import lombok.Getter; import lombok.extern.log4j.Log4j2; import java.io.File; @@ -11,6 +12,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; @Log4j2 +@Getter public class MKVToolProperties { private String directoryPath; private String mkvmergePath; @@ -59,7 +61,7 @@ public class MKVToolProperties { } private void checkForSeparator() { - if(! (directoryPath.endsWith("/") || directoryPath.endsWith("\\"))){ + if(! (directoryPath.endsWith("/") || (directoryPath.endsWith("\\") && System.getProperty("os.name").toLowerCase().contains("windows")))){ directoryPath += File.separator; } } @@ -78,7 +80,7 @@ public class MKVToolProperties { } private void searchInDefaultPath() { - + directoryPath = "C:\\Program Files\\MKVToolNix"; } private void searchWithUserPath(Scanner input) { diff --git a/src/test/java/config/MKVToolPropertiesTest.java b/src/test/java/config/MKVToolPropertiesTest.java index 850f2e9..bd58886 100644 --- a/src/test/java/config/MKVToolPropertiesTest.java +++ b/src/test/java/config/MKVToolPropertiesTest.java @@ -1,45 +1,77 @@ package config; import lombok.extern.log4j.Log4j2; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; -import org.mockito.Mock; import java.io.File; import java.io.FileNotFoundException; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; -import java.util.Scanner; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; @Log4j2 public class MKVToolPropertiesTest { - @Mock - Scanner input; - @Test public void testPathIsValid() { try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ - out.print("test/resources"); + out.print("src/test/resources"); }catch(FileNotFoundException | UnsupportedEncodingException e){ log.error("File not found!"); } - try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ - out.print("test/resources/"); - }catch(FileNotFoundException | UnsupportedEncodingException e){ - log.error("File not found!"); - }finally{ - File file = new File("mkvDirectoryPath"); - file.delete(); - } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertEquals("src/test/resources\\mkvmerge.exe", MKVToolProperties.getInstance().getMkvmergePath()); + try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ + out.print("src/test/resources/"); + }catch(FileNotFoundException | UnsupportedEncodingException e){ + log.error("File not found!"); + } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertEquals("src/test/resources/mkvmerge.exe", MKVToolProperties.getInstance().getMkvmergePath()); } @Test - public void testCreateFilePath() { -// input = mock(Scanner.class); -// when(input.nextLine()).thenReturn("test\\resources\\"); -// MKVToolProperties.createFilePath(); -// MKVToolProperties prop = new MKVToolProperties(); -// assertEquals(prop.getMkvmergePath(), "test\\resources\\mkvmerge.exe"); + public void testCheckForSeparator() { + try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ + out.print("src/test/resources"); + }catch(FileNotFoundException | UnsupportedEncodingException e){ + log.error("File not found!"); + } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertTrue(MKVToolProperties.getInstance().getDirectoryPath().endsWith("/") || MKVToolProperties.getInstance().getDirectoryPath().endsWith("\\")); + + try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ + out.print("src/test/resources/"); + }catch(FileNotFoundException | UnsupportedEncodingException e){ + log.error("File not found!"); + } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertTrue(MKVToolProperties.getInstance().getDirectoryPath().endsWith("/") || MKVToolProperties.getInstance().getDirectoryPath().endsWith("\\")); + + try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ + out.print("src\\test\\resources"); + }catch(FileNotFoundException | UnsupportedEncodingException e){ + log.error("File not found!"); + } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertTrue(MKVToolProperties.getInstance().getDirectoryPath().endsWith("/") || MKVToolProperties.getInstance().getDirectoryPath().endsWith("\\")); + + try(PrintWriter out = new PrintWriter("mkvDirectoryPath", "UTF-8")){ + out.print("src\\test\\resources\\"); + }catch(FileNotFoundException | UnsupportedEncodingException e){ + log.error("File not found!"); + } + MKVToolProperties.getInstance().defineMKVToolNixPath(); + assertTrue(MKVToolProperties.getInstance().getDirectoryPath().endsWith("/") || MKVToolProperties.getInstance().getDirectoryPath().endsWith("\\")); + } + + @AfterEach + public void afterAll() { + File file = new File("mkvDirectoryPath"); + file.delete(); } }