Skip to content

Commit e1df3d8

Browse files
committed
B!! images compressed differently on JDKs before 11
1 parent c071779 commit e1df3d8

File tree

6 files changed

+24
-15
lines changed

6 files changed

+24
-15
lines changed

approvaltests-tests/src/test/java/org/approvaltests/awt/ApprovalsTest.java

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,31 +19,21 @@
1919
//@UseReporter({FileCaptureReporter.class})
2020
public class ApprovalsTest
2121
{
22-
@DisabledOnJre({JRE.JAVA_8})
2322
@Test
2423
void customPanel()
2524
{
26-
final CustomPanel panel = new CustomPanel();
25+
CustomPanel panel = new CustomPanel();
2726
AwtApprovals.verify(panel);
2827
}
29-
// @DisabledOnJre({JRE.JAVA_8})
30-
// TODO
3128
@Disabled("continue here next week")
3229
@Test
3330
void customPanelWithText()
3431
{
3532
// begin-snippet: file_capture_reporter_example
36-
final CustomPanel panel = new CustomPanel(true, 20);
33+
CustomPanel panel = new CustomPanel(true, 20);
3734
AwtApprovals.verify(panel, new Options(new FileCaptureReporter()));
3835
// end-snippet
3936
}
40-
@EnabledOnJre({JRE.JAVA_8})
41-
@Test
42-
void customPanelOnJre8()
43-
{
44-
final CustomPanel panel = new CustomPanel();
45-
AwtApprovals.verify(panel);
46-
}
4737
@Test
4838
@UseReporter(ImageWebReporter.class)
4939
void testSequence()
@@ -73,8 +63,8 @@ void testSequenceWithTimings()
7363
AwtApprovals.verifySequenceWithTimings(5,
7464
f -> new Tuple<>(squareDrawer.setSquareSize(f * 10), Duration.ofSeconds(1 + f)));
7565
}
76-
@DisabledOnJre({JRE.JAVA_8})
7766
@Test
67+
@UseReporter(FileCaptureReporter.class)
7868
void testBufferedImage()
7969
{
8070
BufferedImage bufferedImage = new BufferedImage(60, 30, BufferedImage.TYPE_INT_ARGB);
141 Bytes
Loading

approvaltests/src/main/java/org/approvaltests/awt/AwtApprovals.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@ public static void verify(BufferedImage bufferedImage)
4343
}
4444
public static void verify(BufferedImage bufferedImage, Options options)
4545
{
46-
Approvals.verify(new ImageApprovalWriter(bufferedImage), options);
46+
try (NamedEnvironment env = ImageApprovalWriter.asJreAware())
47+
{
48+
Approvals.verify(new ImageApprovalWriter(bufferedImage), options);
49+
}
4750
}
4851
public static void verify(Component c)
4952
{
@@ -62,7 +65,10 @@ public static void verify(Paintable c)
6265
}
6366
public static void verify(Paintable c, Options options)
6467
{
65-
Approvals.verify(options.createWriter(c), options);
68+
try (NamedEnvironment env = ImageApprovalWriter.asJreAware())
69+
{
70+
Approvals.verify(options.createWriter(c), options);
71+
}
6672
}
6773
public static void verifySequence(int numberOfFrames, Function1<Integer, Paintable> sequenceRenderer)
6874
{

approvaltests/src/main/java/org/approvaltests/writers/ImageApprovalWriter.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,31 @@
22

33
import com.spun.util.ObjectUtils;
44
import org.approvaltests.core.ApprovalWriter;
5+
import org.approvaltests.namer.NamedEnvironment;
56

67
import javax.imageio.ImageIO;
78
import java.awt.image.BufferedImage;
89
import java.io.File;
910

11+
import static org.approvaltests.namer.NamerFactory.asMachineSpecificTest;
12+
1013
public class ImageApprovalWriter implements ApprovalWriter
1114
{
1215
private final BufferedImage image;
1316
public ImageApprovalWriter(BufferedImage image)
1417
{
1518
this.image = image;
1619
}
20+
public static NamedEnvironment asJreAware()
21+
{
22+
return asMachineSpecificTest(() -> getJreInformation());
23+
}
24+
private static String getJreInformation()
25+
{
26+
String javaVersion = System.getProperty("java.version");
27+
int major = Integer.parseInt(javaVersion.split("\\.")[0]);
28+
return major < 11 ? "jdkPre11" : "jdkPost11";
29+
}
1730
@Override
1831
public File writeReceivedFile(File received)
1932
{

0 commit comments

Comments
 (0)