From 69ce99b3bc1dabdfc9917e330c5411f71ad08aa0 Mon Sep 17 00:00:00 2001 From: costin Date: Tue, 31 Aug 2010 15:00:45 +0300 Subject: [PATCH] SGF-10 SGF-15 + quick validation of parsing (w/o subscriptions/interests or pools) --- .../org/springframework/data/gemfire/TestUtils.java | 12 +++++++++++- .../gemfire/config/ClientRegionNamespaceTest.java | 9 +++------ .../data/gemfire/config/client-ns.xml | 2 ++ 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/test/java/org/springframework/data/gemfire/TestUtils.java b/src/test/java/org/springframework/data/gemfire/TestUtils.java index 61048466..8982f1da 100644 --- a/src/test/java/org/springframework/data/gemfire/TestUtils.java +++ b/src/test/java/org/springframework/data/gemfire/TestUtils.java @@ -25,7 +25,17 @@ public abstract class TestUtils { @SuppressWarnings("unchecked") public static T readField(String name, Object target) throws Exception { - Field field = target.getClass().getDeclaredField(name); + Field field = null; + Class clazz = target.getClass(); + do { + try { + field = clazz.getDeclaredField(name); + } catch (Exception ex) { + } + + clazz = clazz.getSuperclass(); + } while (field == null && !clazz.equals(Object.class)); + field.setAccessible(true); return (T) field.get(target); } diff --git a/src/test/java/org/springframework/data/gemfire/config/ClientRegionNamespaceTest.java b/src/test/java/org/springframework/data/gemfire/config/ClientRegionNamespaceTest.java index e97244a7..355fa4cf 100644 --- a/src/test/java/org/springframework/data/gemfire/config/ClientRegionNamespaceTest.java +++ b/src/test/java/org/springframework/data/gemfire/config/ClientRegionNamespaceTest.java @@ -36,7 +36,6 @@ import org.springframework.util.ObjectUtils; import com.gemstone.gemfire.cache.CacheListener; import com.gemstone.gemfire.cache.DataPolicy; import com.gemstone.gemfire.cache.InterestResultPolicy; -import com.gemstone.gemfire.cache.RegionAttributes; import com.gemstone.gemfire.cache.Scope; /** @@ -56,15 +55,13 @@ public class ClientRegionNamespaceTest { @Test public void testPublishingClient() throws Exception { - assertTrue(context.containsBean("pub")); - ClientRegionFactoryBean fb = context.getBean("&pub", ClientRegionFactoryBean.class); + assertTrue(context.containsBean("empty")); + ClientRegionFactoryBean fb = context.getBean("&empty", ClientRegionFactoryBean.class); assertEquals(DataPolicy.EMPTY, TestUtils.readField("dataPolicy", fb)); assertEquals(Scope.LOCAL, TestUtils.readField("scope", fb)); - RegionAttributes attrs = TestUtils.readField("attributes", fb); - assertFalse(attrs.getPublisher()); } - @Test + public void testComplexClient() throws Exception { assertTrue(context.containsBean("complex")); ClientRegionFactoryBean fb = context.getBean("&complex", ClientRegionFactoryBean.class); diff --git a/src/test/resources/org/springframework/data/gemfire/config/client-ns.xml b/src/test/resources/org/springframework/data/gemfire/config/client-ns.xml index d5c2f4fd..00881fa5 100644 --- a/src/test/resources/org/springframework/data/gemfire/config/client-ns.xml +++ b/src/test/resources/org/springframework/data/gemfire/config/client-ns.xml @@ -19,10 +19,12 @@ +