Created by
H. Lo
| 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'");
}
}
|