package jnpf.dmsEntity.preview.enums;
|
|
import org.junit.jupiter.api.Test;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
class DmsWatermarkTargetTypeTest {
|
|
@Test
|
void classifiesWatermarkTargetExtensionsCaseInsensitively() {
|
assertEquals(DmsWatermarkTargetType.DOCX,
|
DmsWatermarkTargetType.fromFileName("manual.DOCX"));
|
assertEquals(DmsWatermarkTargetType.PDF,
|
DmsWatermarkTargetType.fromFileName("manual.PDF"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("diagram.bmp"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("animation.GIF"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("photo.jpeg"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("photo.JPG"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("diagram.png"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.fromFileName("diagram.webp"));
|
}
|
|
@Test
|
void fallsBackToMimeTypeWhenTheFileNameHasNoExtension() {
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.from("diagram", "image/png"));
|
assertEquals(DmsWatermarkTargetType.IMAGE,
|
DmsWatermarkTargetType.from("diagram", "image/png; charset=binary"));
|
assertEquals(DmsWatermarkTargetType.DOCX, DmsWatermarkTargetType.from("manual",
|
"application/vnd.openxmlformats-officedocument.wordprocessingml.document"));
|
assertEquals(DmsWatermarkTargetType.PDF,
|
DmsWatermarkTargetType.from("manual", "application/pdf; charset=binary"));
|
}
|
|
@Test
|
void rejectsMissingAndUnsupportedFileExtensions() {
|
assertEquals(DmsWatermarkTargetType.UNSUPPORTED,
|
DmsWatermarkTargetType.fromFileName("manual"));
|
assertEquals(DmsWatermarkTargetType.UNSUPPORTED,
|
DmsWatermarkTargetType.fromFileName(null));
|
}
|
}
|