Add TestGroup.CUSTOM_COMPILATION

Previously building with JDK > 1.8 b88 caused test failures due to errors
with custom compilers like Jibx and Jasper reports.

This commit adds a new TestGroup named CUSTOM_COMPILATION that allows the
CI server to continue to run these tests but allow committers to ignore
these tests.
This commit is contained in:
Rob Winch
2013-07-24 09:21:10 -05:00
parent 4da7e304b8
commit f7c0795c1a
5 changed files with 26 additions and 5 deletions

View File

@@ -59,8 +59,14 @@ public enum TestGroup {
/**
* Tests that should only be run on the continuous integration server.
*/
CI;
CI,
/**
* Tests that require custom compilation beyond that of the standard JDK. This helps to
* allow running tests that will otherwise fail when using JDK > 1.8 b88. See
* <a href="https://jira.springsource.org/browse/SPR-10558">SPR-10558</a>
*/
CUSTOM_COMPILATION;
/**
* Parse the specified comma separates string of groups.

View File

@@ -64,7 +64,7 @@ public class TestGroupTests {
thrown.expect(IllegalArgumentException.class);
thrown.expectMessage("Unable to find test group 'missing' when parsing " +
"testGroups value: 'performance, missing'. Available groups include: " +
"[LONG_RUNNING,PERFORMANCE,JMXMP,CI]");
"[LONG_RUNNING,PERFORMANCE,JMXMP,CI,CUSTOM_COMPILATION]");
TestGroup.parse("performance, missing");
}

View File

@@ -20,11 +20,13 @@ import java.io.StringWriter;
import javax.xml.transform.stream.StreamResult;
import org.custommonkey.xmlunit.XMLUnit;
import org.junit.Ignore;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.oxm.AbstractMarshallerTests;
import org.springframework.oxm.Marshaller;
import org.springframework.tests.Assume;
import org.springframework.tests.TestGroup;
import static org.custommonkey.xmlunit.XMLAssert.*;
import static org.junit.Assert.assertFalse;
@@ -36,9 +38,13 @@ import static org.junit.Assert.assertTrue;
* NOTE: These tests fail under Eclipse/IDEA because JiBX binding does
* not occur by default. The Gradle build should succeed, however.
*/
@Ignore("INCOMPATIBLE WITH OPENJDK 8 b89+")
public class JibxMarshallerTests extends AbstractMarshallerTests {
@BeforeClass
public static void compilerAssumptions() {
Assume.group(TestGroup.CUSTOM_COMPILATION);
}
@Override
protected Marshaller createMarshaller() throws Exception {
JibxMarshaller marshaller = new JibxMarshaller();

View File

@@ -20,10 +20,13 @@ import java.io.ByteArrayInputStream;
import javax.xml.transform.stream.StreamSource;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import org.springframework.oxm.AbstractUnmarshallerTests;
import org.springframework.oxm.Unmarshaller;
import org.springframework.tests.Assume;
import org.springframework.tests.TestGroup;
import static org.junit.Assert.*;
@@ -33,13 +36,17 @@ import static org.junit.Assert.*;
* NOTE: These tests fail under Eclipse/IDEA because JiBX binding does
* not occur by default. The Gradle build should succeed, however.
*/
@Ignore("INCOMPATIBLE WITH OPENJDK 8 b89+")
public class JibxUnmarshallerTests extends AbstractUnmarshallerTests {
protected static final String INPUT_STRING_WITH_SPECIAL_CHARACTERS =
"<tns:flights xmlns:tns=\"http://samples.springframework.org/flight\">" +
"<tns:flight><tns:airline>Air Libert\u00e9</tns:airline><tns:number>42</tns:number></tns:flight></tns:flights>";
@BeforeClass
public static void compilerAssumptions() {
Assume.group(TestGroup.CUSTOM_COMPILATION);
}
@Override
protected Unmarshaller createUnmarshaller() throws Exception {
JibxMarshaller unmarshaller = new JibxMarshaller();

View File

@@ -29,6 +29,7 @@ import org.junit.BeforeClass;
import org.springframework.mock.web.test.MockHttpServletRequest;
import org.springframework.mock.web.test.MockHttpServletResponse;
import org.springframework.tests.Assume;
import org.springframework.tests.TestGroup;
import org.springframework.ui.jasperreports.PersonBean;
import org.springframework.ui.jasperreports.ProductBean;
import org.springframework.util.ClassUtils;
@@ -59,6 +60,7 @@ public abstract class AbstractJasperReportsTests {
@BeforeClass
public static void assumptions() {
Assume.canLoadNativeDirFonts();
Assume.group(TestGroup.CUSTOM_COMPILATION);
}
@Before