diff options
Diffstat (limited to 'gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java')
-rw-r--r-- | gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java b/gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java index 2eca8bb4..4091d26d 100644 --- a/gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java +++ b/gson/src/test/java/com/google/gson/functional/ExclusionStrategyFunctionalTest.java @@ -16,6 +16,11 @@ package com.google.gson.functional; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + import com.google.gson.ExclusionStrategy; import com.google.gson.FieldAttributes; import com.google.gson.Gson; @@ -26,7 +31,8 @@ import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import junit.framework.TestCase; +import org.junit.Before; +import org.junit.Test; /** * Performs some functional tests when Gson is instantiated with some common user defined @@ -35,7 +41,7 @@ import junit.framework.TestCase; * @author Inderjeet Singh * @author Joel Leitch */ -public class ExclusionStrategyFunctionalTest extends TestCase { +public class ExclusionStrategyFunctionalTest { private static final ExclusionStrategy EXCLUDE_SAMPLE_OBJECT_FOR_TEST = new ExclusionStrategy() { @Override public boolean shouldSkipField(FieldAttributes f) { return false; @@ -47,12 +53,12 @@ public class ExclusionStrategyFunctionalTest extends TestCase { private SampleObjectForTest src; - @Override - protected void setUp() throws Exception { - super.setUp(); + @Before + public void setUp() throws Exception { src = new SampleObjectForTest(); } + @Test public void testExclusionStrategySerialization() throws Exception { Gson gson = createGson(new MyExclusionStrategy(String.class), true); String json = gson.toJson(src); @@ -61,6 +67,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertTrue(json.contains("\"longField\"")); } + @Test public void testExclusionStrategySerializationDoesNotImpactDeserialization() { String json = "{\"annotatedField\":1,\"stringField\":\"x\",\"longField\":2}"; Gson gson = createGson(new MyExclusionStrategy(String.class), true); @@ -70,6 +77,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertEquals(2, value.longField); } + @Test public void testExclusionStrategyDeserialization() throws Exception { Gson gson = createGson(new MyExclusionStrategy(String.class), false); JsonObject json = new JsonObject(); @@ -85,6 +93,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertEquals(src.stringField, target.stringField); } + @Test public void testExclusionStrategySerializationDoesNotImpactSerialization() throws Exception { Gson gson = createGson(new MyExclusionStrategy(String.class), false); String json = gson.toJson(src); @@ -93,6 +102,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertTrue(json.contains("\"longField\"")); } + @Test public void testExclusionStrategyWithMode() throws Exception { SampleObjectForTest testObj = new SampleObjectForTest( src.annotatedField + 5, src.stringField + "blah,blah", @@ -112,6 +122,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertEquals(src.stringField, target.stringField); } + @Test public void testExcludeTopLevelClassSerialization() { Gson gson = new GsonBuilder() .addSerializationExclusionStrategy(EXCLUDE_SAMPLE_OBJECT_FOR_TEST) @@ -119,6 +130,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertEquals("null", gson.toJson(new SampleObjectForTest(), SampleObjectForTest.class)); } + @Test public void testExcludeTopLevelClassSerializationDoesNotImpactDeserialization() { Gson gson = new GsonBuilder() .addSerializationExclusionStrategy(EXCLUDE_SAMPLE_OBJECT_FOR_TEST) @@ -130,6 +142,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertEquals(2, value.longField); } + @Test public void testExcludeTopLevelClassDeserialization() { Gson gson = new GsonBuilder() .addDeserializationExclusionStrategy(EXCLUDE_SAMPLE_OBJECT_FOR_TEST) @@ -139,6 +152,7 @@ public class ExclusionStrategyFunctionalTest extends TestCase { assertNull(value); } + @Test public void testExcludeTopLevelClassDeserializationDoesNotImpactSerialization() { Gson gson = new GsonBuilder() .addDeserializationExclusionStrategy(EXCLUDE_SAMPLE_OBJECT_FOR_TEST) |