Snippets

H. Lo FileNameWithOutExtTest.java

Created by H. Lo

File snippet.txt Added

  • Ignore whitespace
  • Hide word diff
+package com.thevegcat.app.tmp;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import java.io.File;
+import java.util.Optional;
+
+import org.junit.jupiter.api.Test;
+
+public class FileNameWithOutExtTest {
+
+	private static String fileNameWithOutExt(final String fileName) {
+		return Optional.of(fileName.lastIndexOf("."))
+				.filter(i -> i >= 0)
+				.filter(i -> i > fileName.lastIndexOf(File.separator))
+				.map(i -> fileName.substring(0, i))
+				.orElse(fileName);
+	}
+
+	@Test
+	void testRemoveExt() {
+		assertEquals("file",   fileNameWithOutExt("file"),                      "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("file.ext"),                  "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("file.2.ext"),                "Expected 'file.2'");
+		assertEquals("file",   fileNameWithOutExt("directory/file"),            "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("directory/file.ext"),        "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("directory/file.2.ext"),      "Expected 'file.2'");
+		assertEquals("file",   fileNameWithOutExt("directory.old/file"),        "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("directory.old/file.ext"),    "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("directory.old/file.2.ext"),  "Expected 'file.2'");
+
+		assertEquals("file",   fileNameWithOutExt("file"),                      "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("file.ext"),                  "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("file.2.ext"),                "Expected 'file.2'");
+		assertEquals("file",   fileNameWithOutExt("directory\\file"),           "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("directory\\file.ext"),       "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("directory\\file.2.ext"),     "Expected 'file.2'");
+		assertEquals("file",   fileNameWithOutExt("directory.old\\file"),       "Expected 'file'");
+		assertEquals("file",   fileNameWithOutExt("directory.old\\file.ext"),   "Expected 'file'");
+		assertEquals("file.2", fileNameWithOutExt("directory.old\\file.2.ext"), "Expected 'file.2'");
+	}
+
+}
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.