Skip to content

Commit

Permalink
Extend image-io capabilities with TwelveMonkeys plugins (#191)
Browse files Browse the repository at this point in the history
  • Loading branch information
rob93c authored Dec 23, 2023
1 parent fbc04f5 commit ad95c19
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 3 deletions.
3 changes: 3 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ repositories {

dependencies {
implementation libs.gson
implementation libs.imageio.bmp
implementation libs.imageio.jpeg
implementation libs.imageio.psd
implementation libs.imageio.webp
implementation libs.imgscalr
implementation libs.jave
Expand Down
6 changes: 5 additions & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
[versions]
logback = "1.4.14"
twelvemonkeys = "3.10.1"

[libraries]
gson = "com.google.code.gson:gson:2.10.1"
hamcrest = "org.hamcrest:hamcrest-core:2.2"
imageio-webp = "com.twelvemonkeys.imageio:imageio-webp:3.10.1"
imageio-bmp = { module = "com.twelvemonkeys.imageio:imageio-bmp", version.ref = "twelvemonkeys" }
imageio-jpeg = { module = "com.twelvemonkeys.imageio:imageio-jpeg", version.ref = "twelvemonkeys" }
imageio-psd = { module = "com.twelvemonkeys.imageio:imageio-psd", version.ref = "twelvemonkeys" }
imageio-webp = { module = "com.twelvemonkeys.imageio:imageio-webp", version.ref = "twelvemonkeys" }
imgscalr = "org.imgscalr:imgscalr-lib:4.2"
jave = "ws.schild:jave-core:3.4.0"
junit = "org.junit.jupiter:junit-jupiter:5.10.1"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public class SubstringHighlighter extends MessageConverter {
static final String CONTINUE_PREVIOUS_COLOR = changeColorTo(RESET + DEFAULT_FG);
static final String HIGHLIGHTED_NEW_USER = " " + START_YELLOW + NEW_USER.substring(1) + CONTINUE_PREVIOUS_COLOR;
static final String START_GREEN = changeColorTo(BOLD + GREEN_FG);
private static final Pattern MIME_TYPE_PATTERN = Pattern.compile(" ([\\w-]+/[\\w-]+) ");
private static final Pattern MIME_TYPE_PATTERN = Pattern.compile(" (\\w+/[-+.\\w]+) ");

@Override
public String convert(ILoggingEvent event) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
class SubstringHighlighterTest {

private static final String LOG_MESSAGE = "Received request";
private static final String MIME_TYPE = "image/png";
private static final String MIME_TYPE = "image/vnd.microsoft.icon";
private static final String LOG_MESSAGE_WITH_MIME_TYPE = LOG_MESSAGE + " with " + MIME_TYPE + " MIME type";

private SubstringHighlighter substringHighlighter;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,30 @@ void resizeWebpImage() throws Exception {
assertImageConsistency(result, 256, 512);
}

@Test
void resizeFaviconImage() throws Exception {
var faviconImage = resources.loadResource("favicon.ico");
var result = MediaHelper.convert(faviconImage);

assertImageConsistency(result, 512, 512);
}

@Test
void resizeTiffImage() throws Exception {
var tiffImage = resources.loadResource("valid.tiff");
var result = MediaHelper.convert(tiffImage);

assertImageConsistency(result, 512, 342);
}

@Test
void resizePsdImage() throws Exception {
var psdImage = resources.loadResource("valid.psd");
var result = MediaHelper.convert(psdImage);

assertImageConsistency(result, 512, 384);
}

@Test
void convertLongMovVideo() throws Exception {
var movVideo = resources.loadResource("long.mov");
Expand Down Expand Up @@ -275,5 +299,29 @@ void concurrentPngImageConversions() {

executeConcurrentConversionsOf(pngImage);
}

@Test
@DisplayName("ico images")
void concurrentFaviconImageConversions() {
var faviconImage = resources.loadResource("favicon.ico");

executeConcurrentConversionsOf(faviconImage);
}

@Test
@DisplayName("tiff images")
void concurrentTiffImageConversions() {
var tiffImage = resources.loadResource("valid.tiff");

executeConcurrentConversionsOf(tiffImage);
}

@Test
@DisplayName("psd images")
void concurrentPsdImageConversions() {
var psdImage = resources.loadResource("valid.psd");

executeConcurrentConversionsOf(psdImage);
}
}
}
Binary file added src/test/resources/favicon.ico
Binary file not shown.
Binary file added src/test/resources/valid.psd
Binary file not shown.
Binary file added src/test/resources/valid.tiff
Binary file not shown.

0 comments on commit ad95c19

Please sign in to comment.