You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by at...@apache.org on 2012/06/23 22:59:37 UTC
svn commit: r1353202 - in
/rave/branches/model_interfaces/rave-components/rave-jpa/src:
main/java/org/apache/rave/portal/model/conversion/JpaConverter.java
test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java
Author: ate
Date: Sat Jun 23 20:59:37 2012
New Revision: 1353202
URL: http://svn.apache.org/viewvc?rev=1353202&view=rev
Log:
Fixing temporary workaround for RAVE-689: JpaConverter static converterMap can get 'corrupted' across multiple unit tests and causing tests to fail
See: https://issues.apache.org/jira/browse/RAVE-689
Modified:
rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaConverter.java
rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java
Modified: rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaConverter.java?rev=1353202&r1=1353201&r2=1353202&view=diff
==============================================================================
--- rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaConverter.java (original)
+++ rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaConverter.java Sat Jun 23 20:59:37 2012
@@ -42,6 +42,10 @@ public class JpaConverter {
public <S,T> ModelConverter<S, T> getConverter(Class<S> clazz) {
return converterMap.get(clazz);
}
+
+ protected static boolean isInstanceSet() {
+ return instance != null;
+ }
public static JpaConverter getInstance() {
if(instance == null) {
Modified: rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java
URL: http://svn.apache.org/viewvc/rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java?rev=1353202&r1=1353201&r2=1353202&view=diff
==============================================================================
--- rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java (original)
+++ rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/model/conversion/ConvertingListProxyFactoryTest.java Sat Jun 23 20:59:37 2012
@@ -4,34 +4,49 @@ import org.apache.rave.model.ModelConver
import org.apache.rave.portal.model.Person;
import org.apache.rave.portal.model.impl.PersonImpl;
import org.junit.After;
+import org.junit.Before;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.lang.reflect.Proxy;
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import static org.easymock.EasyMock.*;
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.sameInstance;
+import static org.hamcrest.CoreMatchers.*;
import static org.junit.Assert.assertThat;
/**
- */@RunWith(SpringJUnit4ClassRunner.class)
- @ContextConfiguration(locations = {"classpath:test-applicationContext.xml",
- "classpath:test-dataContext.xml"})
+ */
public class ConvertingListProxyFactoryTest {
- @Autowired
- private List<ModelConverter> originalConverters;
-
+ // TODO: RAVE-689 temporary fix/workaround
+ private static class StaticConvertersAccessor extends JpaConverter {
+ private StaticConvertersAccessor(List<ModelConverter> converters) {
+ super(converters);
+ }
+ public static Map<Class<?>, ModelConverter> getConverters() {
+ return JpaConverter.isInstanceSet() ? JpaConverter.getInstance().converterMap : null;
+ }
+ public static void setConverters(Map<Class<?>, ModelConverter> converters) {
+ if (JpaConverter.isInstanceSet()) {
+ JpaConverter.getInstance().converterMap = converters;
+ }
+ }
+ }
+
+ private Map<Class<?>, ModelConverter> savedConverters;
+
+ @Before
+ public void setup() {
+ savedConverters = StaticConvertersAccessor.getConverters();
+ }
+
@After
public void teardown() {
- new JpaConverter(originalConverters);
+ StaticConvertersAccessor.setConverters(savedConverters);
}
+ // end TODO: RAVE-689 temporary fix/workaround
@Test
public void createProxy() {