http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripSimpleObjectsTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripSimpleObjectsTest.java b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripSimpleObjectsTest.java deleted file mode 100755 index d3339a8..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripSimpleObjectsTest.java +++ /dev/null @@ -1,750 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.a.rttests; - -import static org.junit.Assert.*; - -import java.util.*; - -import org.apache.juneau.*; -import org.apache.juneau.parser.*; -import org.apache.juneau.serializer.*; -import org.junit.*; - -/** - * Tests designed to serialize and parse objects to make sure we end up - * with the same objects for all serializers and parsers. - */ -@SuppressWarnings({"unchecked","rawtypes","javadoc"}) -public class RoundTripSimpleObjectsTest extends RoundTripTest { - - public RoundTripSimpleObjectsTest(String label, SerializerBuilder s, ParserBuilder p, int flags) throws Exception { - super(label, s, p, flags); - } - - //==================================================================================================== - // testNull - //==================================================================================================== - @Test - public void testNull() throws Exception { - String t = null; - t = roundTrip(t); - assertNull(t); - } - - //==================================================================================================== - // testString - //==================================================================================================== - @Test - public void testString() throws Exception { - String t = "foobar"; - t = roundTrip(t); - assertEquals("foobar", t); - t = ""; - t = roundTrip(t); - assertEquals("", t); - } - - //==================================================================================================== - // testStringArray - //==================================================================================================== - @Test - public void testStringArray() throws Exception { - String[] t = {"foo", null, "null", ""}; - t = roundTrip(t, String[].class); - assertEquals("foo", t[0]); - assertNull(t[1]); - assertEquals("null", t[2]); - assertEquals("", t[3]); - } - - //==================================================================================================== - // testString2dArray - //==================================================================================================== - @Test - public void testString2dArray() throws Exception { - String[][] t = {{"foo", null, "null", ""},null}; - t = roundTrip(t, String[][].class); - assertEquals("foo", t[0][0]); - assertNull(t[0][1]); - assertEquals("null", t[0][2]); - assertEquals("", t[0][3]); - assertNull(t[1]); - } - - //==================================================================================================== - // testInt - //==================================================================================================== - @Test - public void testInt() throws Exception { - int t = 123; - t = roundTrip(t); - assertEquals(123, t); - } - - //==================================================================================================== - // testIntArray - //==================================================================================================== - @Test - public void testIntArray() throws Exception { - int[] t = roundTrip(new int[]{1,2,3}, int[].class); - assertEquals(1, t[0]); - assertEquals(2, t[1]); - assertEquals(3, t[2]); - } - - //==================================================================================================== - // testInt2dArray - //==================================================================================================== - @Test - public void testInt2dArray() throws Exception { - int[][] t = {{1,2,3},null}; - t = roundTrip(t, int[][].class); - assertEquals(1, t[0][0]); - assertEquals(2, t[0][1]); - assertEquals(3, t[0][2]); - assertNull(t[1]); - } - - //==================================================================================================== - // testInt3dArray - //==================================================================================================== - @Test - public void testInt3dArray() throws Exception { - int[][][] t = {{{1,2,3},{4,5,6},null},null}; - t = roundTrip(t, int[][][].class); - assertEquals(1, t[0][0][0]); - assertEquals(2, t[0][0][1]); - assertEquals(3, t[0][0][2]); - assertEquals(4, t[0][1][0]); - assertEquals(5, t[0][1][1]); - assertEquals(6, t[0][1][2]); - assertNull(t[0][2]); - assertNull(t[1]); - } - - //==================================================================================================== - // testBoolean - //==================================================================================================== - @Test - public void testBoolean() throws Exception { - boolean t = true; - t = roundTrip(t); - assertTrue(t); - t = false; - t = roundTrip(t); - assertFalse(t); - } - - //==================================================================================================== - // testBooleanArray - //==================================================================================================== - @Test - public void testBooleanArray() throws Exception { - boolean[] t = {true,false}; - t = roundTrip(t, boolean[].class); - assertTrue(t[0]); - assertFalse(t[1]); - } - - //==================================================================================================== - // testBoolean2dArray - //==================================================================================================== - @Test - public void testBoolean2dArray() throws Exception { - boolean[][] t = {{true,false},null}; - t = roundTrip(t, boolean[][].class); - assertTrue(t[0][0]); - assertFalse(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testChar - //==================================================================================================== - @Test - public void testChar() throws Exception { - char t = 'a'; - t = roundTrip(t, char.class); - assertEquals('a', t); - } - - //==================================================================================================== - // testCharArray - //==================================================================================================== - @Test - public void testCharArray() throws Exception { - char[] t = {'a',0}; - t = roundTrip(t, char[].class); - assertEquals('a', t[0]); - assertEquals(0, t[1]); - } - - //==================================================================================================== - // testChar2dArray - //==================================================================================================== - @Test - public void testChar2dArray() throws Exception { - char[][] t = {{'a',0},null}; - t = roundTrip(t, char[][].class); - assertEquals('a', t[0][0]); - assertEquals(0, t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testFloat - //==================================================================================================== - @Test - public void testFloat() throws Exception { - float t = 1f; - t = roundTrip(t, float.class); - assertEquals(1f, t, 0.1f); - } - - //==================================================================================================== - // testFloatArray - //==================================================================================================== - @Test - public void testFloatArray() throws Exception { - float[] t = {1f}; - t = roundTrip(t, float[].class); - assertEquals(1f, t[0], 0.1f); - } - - //==================================================================================================== - // testFloat2dArray - //==================================================================================================== - @Test - public void testFloat2dArray() throws Exception { - float[][] t = {{1f},null}; - t = roundTrip(t, float[][].class); - assertEquals(1f, t[0][0], 0.1f); - assertNull(t[1]); - } - - //==================================================================================================== - // testDouble - //==================================================================================================== - @Test - public void testDouble() throws Exception { - double t = 1d; - t = roundTrip(t, double.class); - assertEquals(1d, t, 0.1f); - } - - //==================================================================================================== - // testDoubleArray - //==================================================================================================== - @Test - public void testDoubleArray() throws Exception { - double[] t = {1d}; - t = roundTrip(t, double[].class); - assertEquals(1d, t[0], 0.1f); - } - - //==================================================================================================== - // testDouble2dArray - //==================================================================================================== - @Test - public void testDouble2dArray() throws Exception { - double[][] t = {{1d},null}; - t = roundTrip(t, double[][].class); - assertEquals(1d, t[0][0], 0.1f); - assertNull(t[1]); - } - - //==================================================================================================== - // testLong - //==================================================================================================== - @Test - public void testLong() throws Exception { - long t = 1l; - t = roundTrip(t, long.class); - assertEquals(1l, t); - } - - //==================================================================================================== - // testLongArray - //==================================================================================================== - @Test - public void testLongArray() throws Exception { - long[] t = {1l}; - t = roundTrip(t, long[].class); - assertEquals(1l, t[0]); - } - - //==================================================================================================== - // testLong2dArray - //==================================================================================================== - @Test - public void testLong2dArray() throws Exception { - long[][] t = {{1l},null}; - t = roundTrip(t, long[][].class); - assertEquals(1l, t[0][0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testShort - //==================================================================================================== - @Test - public void testShort() throws Exception { - short t = (short)1; - t = roundTrip(t, short.class); - assertEquals(1l, t); - } - - //==================================================================================================== - // testShortArray - //==================================================================================================== - @Test - public void testShortArray() throws Exception { - short[] t = {(short)1}; - t = roundTrip(t, short[].class); - assertEquals(1l, t[0]); - } - - //==================================================================================================== - // testShort2dArray - //==================================================================================================== - @Test - public void testShort2dArray() throws Exception { - short[][] t = {{(short)1},null}; - t = roundTrip(t, short[][].class); - assertEquals((short)1, t[0][0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testInteger - //==================================================================================================== - @Test - public void testInteger() throws Exception { - Integer t = 123; - t = roundTrip(t, Integer.class); - assertEquals(new Integer(123), t); - } - - //==================================================================================================== - // testIntegerArray - //==================================================================================================== - @Test - public void testIntegerArray() throws Exception { - Integer[] t = {123, null}; - t = roundTrip(t, Integer[].class); - assertEquals(new Integer(123), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testInteger2dArray - //==================================================================================================== - @Test - public void testInteger2dArray() throws Exception { - Integer[][] t = {{123,null},null}; - t = roundTrip(t, Integer[][].class); - assertEquals(new Integer(123), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testInteger3dArray - //==================================================================================================== - @Test - public void testInteger3dArray() throws Exception { - Integer[][][] t = {{{123,null},null},null}; - t = roundTrip(t, Integer[][][].class); - assertEquals(new Integer(123), t[0][0][0]); - assertNull(t[0][0][1]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testBooleanObject - //==================================================================================================== - @Test - public void testBooleanObject() throws Exception { - Boolean t = Boolean.TRUE; - t = roundTrip(t, Boolean.class); - assertTrue(t); - t = Boolean.FALSE; - t = roundTrip(t, Boolean.class); - assertFalse(t); - } - - //==================================================================================================== - // testBooleanObjectArray - //==================================================================================================== - @Test - public void testBooleanObjectArray() throws Exception { - Boolean[] t = {true,false,null}; - t = roundTrip(t, Boolean[].class); - assertTrue(t[0]); - assertFalse(t[1]); - assertNull(t[2]); - } - - //==================================================================================================== - // testBooleanObject2dArray - //==================================================================================================== - @Test - public void testBooleanObject2dArray() throws Exception { - Boolean[][] t = {{true,false,null},null}; - t = roundTrip(t, Boolean[][].class); - assertTrue(t[0][0]); - assertFalse(t[0][1]); - assertNull(t[0][2]); - assertNull(t[1]); - } - - //==================================================================================================== - // testCharacter - //==================================================================================================== - @Test - public void testCharacter() throws Exception { - Character t = 'a'; - t = roundTrip(t, Character.class); - assertEquals(new Character('a'), t); - } - - //==================================================================================================== - // testCharacterArray - //==================================================================================================== - @Test - public void testCharacterArray() throws Exception { - Character[] t = {'a',null}; - t = roundTrip(t, Character[].class); - assertEquals(new Character('a'), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testCharacter2dArray - //==================================================================================================== - @Test - public void testCharacter2dArray() throws Exception { - Character[][] t = {{'a',null},null}; - t = roundTrip(t, Character[][].class); - assertEquals(new Character('a'), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testFloatObject - //==================================================================================================== - @Test - public void testFloatObject() throws Exception { - Float t = 1f; - t = roundTrip(t, Float.class); - assertEquals(new Float(1f), t); - } - - //==================================================================================================== - // testFloatObjectArray - //==================================================================================================== - @Test - public void testFloatObjectArray() throws Exception { - Float[] t = {1f, null}; - t = roundTrip(t, Float[].class); - assertEquals(new Float(1f), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testFloatObject2dArray - //==================================================================================================== - @Test - public void testFloatObject2dArray() throws Exception { - Float[][] t = {{1f,null},null}; - t = roundTrip(t, Float[][].class); - assertEquals(new Float(1f), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testDoubleObject - //==================================================================================================== - @Test - public void testDoubleObject() throws Exception { - Double t = 1d; - t = roundTrip(t, Double.class); - assertEquals(new Double(1d), t); - } - - //==================================================================================================== - // testDoubleObjectArray - //==================================================================================================== - @Test - public void testDoubleObjectArray() throws Exception { - Double[] t = {1d,null}; - t = roundTrip(t, Double[].class); - assertEquals(new Double(1d), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testDoubleObject2dArray - //==================================================================================================== - @Test - public void testDoubleObject2dArray() throws Exception { - Double[][] t = {{1d,null},null}; - t = roundTrip(t, Double[][].class); - assertEquals(new Double(1d), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testLongObject - //==================================================================================================== - @Test - public void testLongObject() throws Exception { - Long t = 1l; - t = roundTrip(t, Long.class); - assertEquals(new Long(1l), t); - } - - //==================================================================================================== - // testLongObjectArray - //==================================================================================================== - @Test - public void testLongObjectArray() throws Exception { - Long[] t = {1l, null}; - t = roundTrip(t, Long[].class); - assertEquals(new Long(1l), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testLongObject2dArray - //==================================================================================================== - @Test - public void testLongObject2dArray() throws Exception { - Long[][] t = {{1l,null},null}; - t = roundTrip(t, Long[][].class); - assertEquals(new Long(1l), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testShortObject - //==================================================================================================== - @Test - public void testShortObject() throws Exception { - Short t = (short)1; - t = roundTrip(t, Short.class); - assertEquals(new Short((short)1), t); - } - - //==================================================================================================== - // testShortObjectArray - //==================================================================================================== - @Test - public void testShortObjectArray() throws Exception { - Short[] t = {(short)1,null}; - t = roundTrip(t, Short[].class); - assertEquals(new Short((short)1), t[0]); - assertNull(t[1]); - } - - //==================================================================================================== - // testShortObject2dArray - //==================================================================================================== - @Test - public void testShortObject2dArray() throws Exception { - Short[][] t = {{(short)1,null},null}; - t = roundTrip(t, Short[][].class); - assertEquals(new Short((short)1), t[0][0]); - assertNull(t[0][1]); - assertNull(t[1]); - } - - //==================================================================================================== - // testObjectMap - //==================================================================================================== - @Test - public void testObjectMap() throws Exception { - ObjectMap t = new ObjectMap("{a:'b',c:123,d:false,e:null,f:[123,'abc',true,false,null]}"); - t = roundTrip(t); - assertEquals("b", t.get("a")); - assertEquals(123, t.get("c")); - assertEquals(false, t.get("d")); - assertNull(t.get("e")); - List l = (List)t.get("f"); - assertEquals(123, l.get(0)); - assertEquals("abc", l.get(1)); - assertEquals(true, l.get(2)); - assertEquals(false, l.get(3)); - assertNull(l.get(4)); - } - - //==================================================================================================== - // testObjectList - //==================================================================================================== - @Test - public void testObjectList() throws Exception { - ObjectList t = new ObjectList("['abc',123,true,false,null,{a:'b'}]"); - t = roundTrip(t); - assertEquals("abc", t.get(0)); - assertEquals(123, t.get(1)); - assertEquals(true, t.get(2)); - assertEquals(false, t.get(3)); - assertNull(t.get(4)); - Map m = (Map)t.get(5); - assertEquals("b", m.get("a")); - } - - //==================================================================================================== - // testTreeMap - //==================================================================================================== - @Test - public void testTreeMap() throws Exception { - TreeMap t = new TreeMap(); - t.put("a", 1); - t.put("b", 2); - t.put("c", 3); - t = roundTrip(t, TreeMap.class); - assertEquals(1, t.get("a")); - assertEquals(2, t.get("b")); - assertEquals(3, t.get("c")); - - t = new TreeMap(); - t.put("a", true); - t.put("b", false); - t.put("c", null); - t.put("d", "foo"); - t.put("null", "baz"); - t.put("a\"a", "a\"a"); - t.put("b'b", "b'b"); - t.put("\"cc\"", "\"cc\""); - t.put("'dd'", "'dd'"); - t = roundTrip(t, TreeMap.class); - assertEquals(true, t.get("a")); - assertEquals(false, t.get("b")); - assertNull(t.get("c")); - assertEquals("foo", t.get("d")); - assertEquals("baz", t.get("null")); - assertEquals("a\"a", t.get("a\"a")); - assertEquals("b'b", t.get("b'b")); - assertEquals("\"cc\"", t.get("\"cc\"")); - assertEquals("'dd'", t.get("'dd'")); - } - - //==================================================================================================== - // testLinkedHashMap - //==================================================================================================== - @Test - public void testLinkedHashMap() throws Exception { - LinkedHashMap t = new LinkedHashMap(); - t.put("a", true); - t.put("b", false); - t.put("c", null); - t.put("d", "foo"); - t.put(null, "bar"); - t.put("null", "null"); - t.put("true", "true"); - t.put("false", "false"); - t.put("a\"a", "a\"a"); - t.put("b'b", "b'b"); - t.put("\"cc\"", "\"cc\""); - t.put("'dd'", "'dd'"); - t.put("<ee>", "<ee>"); - t.put("<ff/>", "<ff/>"); - t.put("</gg>", "</gg>"); - t.put("<>", "<>"); - t.put("{}", "{}"); - t.put("[]", "[]"); - t.put("&", "&"); - t.put("?", "?"); - t.put("/", "/"); - t.put("\b", "\b"); - t.put("\\b", "\\b"); - t.put("\n", "\n"); - t.put("\\n", "\\n"); - t.put("\t", "\t"); - t.put("\\t", "\\t"); - t.put("\f", "\f"); - t.put("\\f", "\\f"); - t.put("\\", "\\"); - t.put("\\\\", "\\\\"); - t.put("\u2345", "\u2345"); - t.put("\\u2345", "\\u2345"); - t.put("\\\u2345", "\\\u2345"); - t.put("<>{}[]&?/\b\n\t\f\\\\\u2345", "<>{}[]&?/\b\n\t\f\\\\\u2345"); - t = roundTrip(t, LinkedHashMap.class); - assertEquals(true, t.get("a")); - assertEquals(false, t.get("b")); - assertNull(t.get("c")); - assertEquals("foo", t.get("d")); - assertEquals("bar", t.get(null)); - assertEquals("null", t.get("null")); - assertEquals("true", t.get("true")); - assertEquals("false", t.get("false")); - assertEquals("a\"a", t.get("a\"a")); - assertEquals("b'b", t.get("b'b")); - assertEquals("\"cc\"", t.get("\"cc\"")); - assertEquals("'dd'", t.get("'dd'")); - assertEquals("<ee>", t.get("<ee>")); - assertEquals("<ff/>", t.get("<ff/>")); - assertEquals("</gg>", t.get("</gg>")); - assertEquals("<>", t.get("<>")); - assertEquals("{}", t.get("{}")); - assertEquals("[]", t.get("[]")); - assertEquals("&", t.get("&")); - assertEquals("?", t.get("?")); - assertEquals("/", t.get("/")); - assertEquals("\b", t.get("\b")); - assertEquals("\\b", t.get("\\b")); - assertEquals("\n", t.get("\n")); - assertEquals("\\n", t.get("\\n")); - assertEquals("\t", t.get("\t")); - assertEquals("\\t", t.get("\\t")); - assertEquals("\f", t.get("\f")); - assertEquals("\\f", t.get("\\f")); - assertEquals("\\", t.get("\\")); - assertEquals("\\\\", t.get("\\\\")); - assertEquals("\u2345", t.get("\u2345")); - assertEquals("\\u2345", t.get("\\u2345")); - assertEquals("\\\u2345", t.get("\\\u2345")); - assertEquals("<>{}[]&?/\b\n\t\f\\\\\u2345", t.get("<>{}[]&?/\b\n\t\f\\\\\u2345")); - } - - //==================================================================================================== - // testVector - //==================================================================================================== - @Test - public void testVector() throws Exception { - Vector<Integer> t = new Vector<Integer>(); - t.add(1); - t.add(2); - t.add(3); - t = roundTrip(t, Vector.class, Integer.class); - } - - //==================================================================================================== - // testNull - //==================================================================================================== - @Test - public void testExtendedUnicode() throws Exception { - // Test 4-byte UTF-8 character - String t = "ð¤¢ð¤¢"; - t = roundTrip(t); - assertEquals("ð¤¢ð¤¢", t); - } -}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTest.java b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTest.java deleted file mode 100755 index b09a8bd..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTest.java +++ /dev/null @@ -1,304 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.a.rttests; - -import static org.apache.juneau.a.rttests.RoundTripTest.Flags.*; - -import java.lang.reflect.*; -import java.util.*; -import java.util.Map.*; - -import org.apache.juneau.*; -import org.apache.juneau.html.*; -import org.apache.juneau.jena.*; -import org.apache.juneau.json.*; -import org.apache.juneau.msgpack.*; -import org.apache.juneau.parser.*; -import org.apache.juneau.serializer.*; -import org.apache.juneau.uon.*; -import org.apache.juneau.urlencoding.*; -import org.apache.juneau.xml.*; -import org.junit.runner.*; -import org.junit.runners.*; - -/** - * Tests designed to serialize and parse objects to make sure we end up - * with the same objects for all serializers and parsers. - */ -@RunWith(Parameterized.class) -@SuppressWarnings({"unchecked","javadoc"}) -public abstract class RoundTripTest { - - public static class Flags { - public static int CHECK_XML_WHITESPACE = 1, VALIDATE_XML = 2, SERIALIZE_SCHEMA = 4, RETURN_ORIGINAL_OBJECT = 8; - } - - @Parameterized.Parameters - public static Collection<Object[]> getPairs() { - return Arrays.asList(new Object[][] { - // Full round-trip testing - { /* 0 */ - "Json - default", - new JsonSerializerBuilder().trimNullProperties(false), - new JsonParserBuilder(), - 0 - }, - { /* 1 */ - "Json - lax", - new JsonSerializerBuilder().simple().trimNullProperties(false), - new JsonParserBuilder(), - 0 - }, - { /* 2 */ - "Json - lax, readable", - new JsonSerializerBuilder().simple().ws().trimNullProperties(false), - new JsonParserBuilder(), - 0 - }, - { /* 3 */ - "Xml - namespaces, validation, readable", - new XmlSerializerBuilder().ns().sq().trimNullProperties(false).addNamespaceUrisToRoot(true).useWhitespace(true), - new XmlParserBuilder(), - CHECK_XML_WHITESPACE | VALIDATE_XML - }, - { /* 4 */ - "Xml - no namespaces, validation", - new XmlSerializerBuilder().sq().trimNullProperties(false), - new XmlParserBuilder(), - CHECK_XML_WHITESPACE - }, - { /* 5 */ - "Html - default", - new HtmlSerializerBuilder().trimNullProperties(false), - new HtmlParserBuilder(), - CHECK_XML_WHITESPACE - }, - { /* 6 */ - "Html - readable", - new HtmlSerializerBuilder().sq().ws().trimNullProperties(false), - new HtmlParserBuilder(), - CHECK_XML_WHITESPACE - }, - { /* 7 */ - "Html - with key/value headers", - new HtmlSerializerBuilder().addKeyValueTableHeaders(true), - new HtmlParserBuilder(), - CHECK_XML_WHITESPACE - }, - { /* 8 */ - "Uon - default", - new UonSerializerBuilder().trimNullProperties(false), - new UonParserBuilder(), - 0 - }, - { /* 9 */ - "Uon - readable", - new UonSerializerBuilder().ws().trimNullProperties(false), - new UonParserBuilder(), - 0 - }, - { /* 10 */ - "Uon - encoded", - new UonSerializerBuilder().encoding().trimNullProperties(false), - new UonParserBuilder().decoding(), - 0 - }, - { /* 11 */ - "UrlEncoding - default", - new UrlEncodingSerializerBuilder().trimNullProperties(false), - new UrlEncodingParserBuilder(), - 0 - }, - { /* 12 */ - "UrlEncoding - readable", - new UrlEncodingSerializerBuilder().ws().trimNullProperties(false), - new UrlEncodingParserBuilder(), - 0 - }, - { /* 13 */ - "UrlEncoding - expanded params", - new UrlEncodingSerializerBuilder().expandedParams(true), - new UrlEncodingParserBuilder().expandedParams(true), - 0 - }, - { /* 14 */ - "Rdf.Xml", - new RdfSerializerBuilder().trimNullProperties(false).addLiteralTypes(true), - new RdfParserBuilder().xml(), - 0 - }, - { /* 15 */ - "Rdf.XmlAbbrev", - new RdfSerializerBuilder().xmlabbrev().trimNullProperties(false).addLiteralTypes(true), - new RdfParserBuilder().xml(), - 0 - }, - { /* 16 */ - "Rdf.Turtle", - new RdfSerializerBuilder().turtle().trimNullProperties(false).addLiteralTypes(true), - new RdfParserBuilder().turtle(), - 0 - }, - { /* 17 */ - "Rdf.NTriple", - new RdfSerializerBuilder().ntriple().trimNullProperties(false).addLiteralTypes(true), - new RdfParserBuilder().ntriple(), - 0 - }, - { /* 18 */ - "Rdf.N3", - new RdfSerializerBuilder().n3().trimNullProperties(false).addLiteralTypes(true), - new RdfParserBuilder().n3(), - 0 - }, - { /* 19 */ - "MsgPack", - new MsgPackSerializerBuilder().trimNullProperties(false), - new MsgPackParserBuilder(), - 0 - }, - - // Validation testing only - { /* 20 */ - "Json schema", - new JsonSchemaSerializerBuilder().trimNullProperties(false), - null, - RETURN_ORIGINAL_OBJECT - }, - { /* 21 */ - "Xml schema", - new XmlSchemaSerializerBuilder().trimNullProperties(false), - new XmlValidatorParserBuilder(), - RETURN_ORIGINAL_OBJECT | CHECK_XML_WHITESPACE - }, - }); - } - - protected Serializer s; - protected Parser p; - private boolean validateXmlWhitespace; - protected boolean returnOriginalObject; - private boolean validateXml; - protected String label; - public boolean debug = false; - - public RoundTripTest(String label, SerializerBuilder s, ParserBuilder p, int flags) throws Exception { - this.label = label; - - Map<Class<Object>, Class<? extends Object>> m = getImplClasses(); - if (m != null) { - for (Entry<Class<Object>, Class<? extends Object>> e : m.entrySet()) { - s.implClass(e.getKey(), e.getValue()); - if (p != null) - p.implClass(e.getKey(), e.getValue()); - } - } - this.s = s.beanFilters(getBeanFilters()).pojoSwaps(getPojoSwaps()).beanDictionary(getDictionary()).properties(getProperties()).build(); - this.p = p == null ? null : p.beanFilters(getBeanFilters()).pojoSwaps(getPojoSwaps()).beanDictionary(getDictionary()).properties(getProperties()).build(); - this.validateXmlWhitespace = (flags & CHECK_XML_WHITESPACE) > 0; - this.validateXml = (flags & VALIDATE_XML) > 0; - this.returnOriginalObject = (flags & RETURN_ORIGINAL_OBJECT) > 0; - } - - - public Class<?>[] getBeanFilters() { - return new Class<?>[0]; - } - - public Class<?>[] getPojoSwaps() { - return new Class<?>[0]; - } - - public Class<?>[] getDictionary() { - return new Class<?>[0]; - } - - public ObjectMap getProperties() { - return ObjectMap.EMPTY_MAP; - } - - public <T> Map<Class<T>,Class<? extends T>> getImplClasses() { - return null; - } - - public <T> T roundTrip(T object, Type c, Type...args) throws Exception { - Object out = serialize(object, this.s); - if (p == null) - return object; - T o = (T)this.p.parse(out, c, args); - return (returnOriginalObject ? object : o); - } - - public <T> T roundTrip(T object) throws Exception { - return roundTrip(object, s, p); - } - - public <T> T roundTrip(T object, Serializer serializer, Parser parser) throws Exception { - Object out = serialize(object, serializer); - if (parser == null) - return object; - T o = (T)parser.parse(out, object == null ? Object.class : object.getClass()); - return (returnOriginalObject ? object : o); - } - - public Serializer getSerializer() { - return s; - } - - public Parser getParser() { - return p; - } - - protected void beanFilters(Class<?>...c) { - s = s.builder().beanFilters(c).build(); - if (p != null) - p = p.builder().beanFilters(c).build(); - } - - protected void pojoSwaps(Class<?>...c) { - s = s.builder().pojoSwaps(c).build(); - if (p != null) - p = p.builder().pojoSwaps(c).build(); - } - - protected void beanDictionary(Class<?>...c) { - s = s.builder().beanDictionary(c).build(); - if (p != null) - p = p.builder().beanDictionary(c).build(); - } - - public boolean isValidationOnly() { - return returnOriginalObject; - } - - public <T> Object serialize(T object, Serializer s) throws Exception { - - Object out = null; - if (s.isWriterSerializer()) - out = ((WriterSerializer)s).serialize(object); - else { - out = ((OutputStreamSerializer)s).serialize(object); - } - - if (debug) - System.err.println("Serialized contents from ["+label+"]...\n---START---\n" + (out instanceof byte[] ? TestUtils.toReadableBytes((byte[])out) : out) + "\n---END---\n"); // NOT DEBUG - - if (validateXmlWhitespace) - TestUtils.checkXmlWhitespace(out.toString()); - - if (validateXml) - TestUtils.validateXml(object, (XmlSerializer)s); - - return out; - } -} http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripToObjectMapsTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripToObjectMapsTest.java b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripToObjectMapsTest.java deleted file mode 100755 index c74f65f..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripToObjectMapsTest.java +++ /dev/null @@ -1,77 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.a.rttests; - -import static org.junit.Assert.*; - -import java.util.*; - -import org.apache.juneau.*; -import org.apache.juneau.parser.*; -import org.apache.juneau.serializer.*; -import org.apache.juneau.utils.*; -import org.junit.*; - -/** - * Tests designed to serialize and parse objects to make sure we end up - * with the same objects for all serializers and parsers. - */ -@SuppressWarnings("javadoc") -public class RoundTripToObjectMapsTest extends RoundTripTest { - - public RoundTripToObjectMapsTest(String label, SerializerBuilder s, ParserBuilder p, int flags) throws Exception { - super(label, s, p, flags); - } - - //==================================================================================================== - // Class with X(ObjectMap) constructor and toObjectMap() method. - //==================================================================================================== - @Test - public void test() throws Exception { - A a = new A(new ObjectMap("{f1:'a',f2:2}")); - a = roundTrip(a, A.class); - assertEquals("a", a.f1); - assertEquals(2, a.f2); - - A[] aa = new A[]{a}; - aa = roundTrip(aa, A[].class); - assertEquals(1, aa.length); - assertEquals("a", aa[0].f1); - assertEquals(2, aa[0].f2); - - List<A> a2 = new AList<A>().append(new A(new ObjectMap("{f1:'a',f2:2}"))); - a2 = roundTrip(a2, List.class, A.class); - assertEquals(1, a2.size()); - assertEquals("a", a2.get(0).f1); - assertEquals(2, a2.get(0).f2); - - Map<String,A> a3 = new AMap<String,A>().append("a", new A(new ObjectMap("{f1:'a',f2:2}"))); - a3 = roundTrip(a3, Map.class, String.class, A.class); - assertEquals(1, a3.size()); - assertEquals("a", a3.get("a").f1); - assertEquals(2, a3.get("a").f2); - } - - public static class A { - private String f1; - private int f2; - public A(ObjectMap m) { - this.f1 = m.getString("f1"); - this.f2 = m.getInt("f2"); - } - public ObjectMap swap(BeanSession session) { - return new ObjectMap().append("f1",f1).append("f2",f2); - } - } - -} http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTransformBeansTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTransformBeansTest.java b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTransformBeansTest.java deleted file mode 100755 index 7ea011c..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTransformBeansTest.java +++ /dev/null @@ -1,374 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.a.rttests; - -import static org.junit.Assert.*; - -import java.io.*; -import java.util.*; - -import javax.xml.datatype.*; - -import org.apache.juneau.*; -import org.apache.juneau.annotation.*; -import org.apache.juneau.json.*; -import org.apache.juneau.parser.*; -import org.apache.juneau.serializer.*; -import org.apache.juneau.transform.*; -import org.apache.juneau.transforms.*; -import org.apache.juneau.utils.*; -import org.junit.*; - -/** - * Tests designed to serialize and parse objects to make sure we end up - * with the same objects for all serializers and parsers. - */ -@SuppressWarnings({"unchecked","rawtypes","serial","javadoc"}) -public class RoundTripTransformBeansTest extends RoundTripTest { - - public RoundTripTransformBeansTest(String label, SerializerBuilder s, ParserBuilder p, int flags) throws Exception { - super(label, s, p, flags); - } - - //==================================================================================================== - // testSwapBeans1 - //==================================================================================================== - @Test - public void testSwapBeans1() throws Exception { - Class<?>[] f = { - ByteArrayBase64Swap.class, - CalendarSwap.ISO8601DTZ.class, - DateSwap.ISO8601DTZ.class - }; - pojoSwaps(f); - A t = new A().init(); - t = roundTrip(t, A.class); - - // ByteArrayBase64Swap - assertEquals(3, t.fByte[3]); - assertNull(t.fnByte); - assertEquals(5, t.faByte[2][1]); - assertEquals(6, t.flByte.get(1)[2]); - assertNull(t.flByte.get(2)); - assertEquals(6, t.fmByte.get("bar")[2]); - assertNull(t.fmByte.get("baz")); - - // CalendarSwap - t.fCalendar.setTimeZone(TimeZone.getTimeZone("GMT")); - assertEquals(2001, t.fCalendar.get(Calendar.YEAR)); - assertEquals(01, t.fCalendar.get(Calendar.MONTH)); - assertEquals(02, t.fCalendar.get(Calendar.DATE)); - assertEquals(03, t.fCalendar.get(Calendar.HOUR)); - assertEquals(04, t.fCalendar.get(Calendar.MINUTE)); - assertEquals(05, t.fCalendar.get(Calendar.SECOND)); - - t.faCalendar[0].setTimeZone(TimeZone.getTimeZone("GMT")); - assertEquals(2001, t.faCalendar[0].get(Calendar.YEAR)); - assertEquals(01, t.faCalendar[0].get(Calendar.MONTH)); - assertEquals(02, t.faCalendar[0].get(Calendar.DATE)); - assertEquals(03, t.faCalendar[0].get(Calendar.HOUR)); - assertEquals(04, t.faCalendar[0].get(Calendar.MINUTE)); - assertEquals(05, t.faCalendar[0].get(Calendar.SECOND)); - assertNull(t.fnCalendar); - assertNull(t.fn2Calendar); - - // DateSwap - assertEquals(1000, t.fDate.getTime()); - assertNull(t.fnDate); - assertEquals(3000, t.faDate[2].getTime()); - assertEquals(4000, t.flDate.get(0).getTime()); - assertNull(t.flDate.get(1)); - assertEquals(5000, t.fmDate.get("foo").getTime()); - assertNull(t.fmDate.get("bar")); - } - - public static class A { - - // Test ByteArrayBase64Swap - public byte[] fByte; - public byte[] fnByte; - public byte[][] faByte; - public List<byte[]> flByte; - public Map<String,byte[]> fmByte; - - public GregorianCalendar fCalendar; - public GregorianCalendar fnCalendar; - public Calendar fn2Calendar; - public GregorianCalendar[] faCalendar; - - public Date fDate; - public Date fnDate; - public Date[] faDate; - public List<Date> flDate; - public Map<String,Date> fmDate; - - public A init() { - fByte = new byte[]{0,1,2,3}; - fnByte = null; - faByte = new byte[][]{{0,1},{2,3},{4,5}}; - flByte = new AList<byte[]>() - .append(new byte[]{1,2,3}) - .append(new byte[]{4,5,6}) - .append(null) - ; - fmByte = new AMap<String,byte[]>() - .append("foo", new byte[]{1,2,3}) - .append("bar", new byte[]{4,5,6}) - .append("baz", null) - ; - - fCalendar = new GregorianCalendar() {{ - set(2001, 01, 02, 03, 04, 05); - setTimeZone(TimeZone.getTimeZone("GMT")); - }}; - fnCalendar = null; - fn2Calendar = null; - faCalendar = new GregorianCalendar[]{ - new GregorianCalendar() {{ - set(2001, 01, 02, 03, 04, 05); - setTimeZone(TimeZone.getTimeZone("GMT")); - }} - }; - - fDate = new Date(1000); - fnDate = null; - faDate = new Date[]{ - new Date(1000), new Date(2000), new Date(3000) - }; - flDate = new AList<Date>() - .append(new Date(4000)) - .append(null) - ; - fmDate = new AMap<String,Date>() - .append("foo", new Date(5000)) - .append("bar", null) - ; - return this; - } - } - - - //==================================================================================================== - // testSwapBeans2 - //==================================================================================================== - @Test - public void testSwapBeans2() throws Exception { - Class<?>[] f = { - ByteArrayBase64Swap.class, - CalendarSwap.DateMedium.class, - DateSwap.RFC2822DT.class, - }; - pojoSwaps(f); - A t = new A().init(); - t = roundTrip(t, A.class); - - // ByteArrayBase64Swap - assertEquals(3, t.fByte[3]); - assertNull(t.fnByte); - assertEquals(5, t.faByte[2][1]); - assertEquals(6, t.flByte.get(1)[2]); - assertNull(t.flByte.get(2)); - assertEquals(6, t.fmByte.get("bar")[2]); - assertNull(t.fmByte.get("baz")); - - // CalendarSwap - t.fCalendar.setTimeZone(TimeZone.getTimeZone("GMT")); - assertEquals(2001, t.fCalendar.get(Calendar.YEAR)); - assertEquals(01, t.fCalendar.get(Calendar.MONTH)); - // Note: We lose precision on the following because of the transform type. - //assertEquals(02, b.fCalendar.get(Calendar.DATE)); - //assertEquals(03, b.fCalendar.get(Calendar.HOUR)); - //assertEquals(04, b.fCalendar.get(Calendar.MINUTE)); - //assertEquals(05, b.fCalendar.get(Calendar.SECOND)); - - t.faCalendar[0].setTimeZone(TimeZone.getTimeZone("GMT")); - assertEquals(2001, t.faCalendar[0].get(Calendar.YEAR)); - assertEquals(01, t.faCalendar[0].get(Calendar.MONTH)); - // Note: We lose precision on the following because of the transform type. - //assertEquals(02, b.faCalendar[0].get(Calendar.DATE)); - //assertEquals(03, b.faCalendar[0].get(Calendar.HOUR)); - //assertEquals(04, b.faCalendar[0].get(Calendar.MINUTE)); - //assertEquals(05, b.faCalendar[0].get(Calendar.SECOND)); - assertNull(t.fnCalendar); - assertNull(t.fn2Calendar); - - // DateSwap - assertEquals(1000, t.fDate.getTime() % 3600000); - assertNull(t.fnDate); - assertEquals(3000, t.faDate[2].getTime() % 3600000); - assertEquals(4000, t.flDate.get(0).getTime() % 3600000); - assertNull(t.flDate.get(1)); - assertEquals(5000, t.fmDate.get("foo").getTime() % 3600000); - assertNull(t.fmDate.get("bar")); - } - - //==================================================================================================== - // testSwaps - Bean.pojoSwaps annotation - //==================================================================================================== - @Test - public void testSwaps() throws Exception { - B t = new B(); - t.f1 = "bar"; - t = roundTrip(t, B.class); - - assertEquals("bar", t.f1); - } - - @Pojo(swap=BSwap.class) - public static class B { - public String f1; - } - - public static class BSwap extends StringSwap<B> { - @Override /* PojoSwap */ - public String swap(BeanSession session, B o) throws SerializeException { - return o.f1; - } - @Override /* PojoSwap */ - public B unswap(BeanSession session, String f, ClassMeta<?> hint) throws ParseException { - B b1 = new B(); - b1.f1 = f; - return b1; - } - } - - //==================================================================================================== - // testXMLGregorianCalendar - Test XMLGregorianCalendarSwap class. - //==================================================================================================== - @Test - public void testXMLGregorianCalendar() throws Exception { - - if (isValidationOnly()) - return; - - GregorianCalendar gc = new GregorianCalendar(); - XMLGregorianCalendar c = DatatypeFactory.newInstance().newXMLGregorianCalendar(gc); - - Serializer s = getSerializer().builder().pojoSwaps(XMLGregorianCalendarSwap.class).build(); - Parser p = getParser().builder().pojoSwaps(XMLGregorianCalendarSwap.class).build(); - - Object r = s.serialize(c); - XMLGregorianCalendar c2 = p.parse(r, XMLGregorianCalendar.class); - assertEquals(c, c2); - } - - //==================================================================================================== - // testSubTypeWithGenerics - //==================================================================================================== - @Test - public void testSubTypeWithGenerics() throws Exception { - JsonSerializer s = JsonSerializer.DEFAULT; - - C1 c1 = C3.create(); - String r = s.serialize(c1); - assertEquals("{\"_type\":\"C3\",\"f1\":{\"f2\":\"f2\",\"f3\":3}}", r); - } - - - @Bean(beanDictionary={C3.class}) - public static interface C1<T> extends Serializable { - void setF1(T f1); - T getF1(); - } - - public abstract static class C2<T> implements C1<T> { - protected T f1; - - @Override /* C1 */ - public void setF1(T f1) { - this.f1 = f1; - } - - @Override /* C1 */ - public T getF1() { - return f1; - } - } - - @Bean(typeName="C3") - public static class C3<T> extends C2<T> { - - public static C3 create() { - C3 c3 = new C3<Object>(); - CDTO cdto = new CDTO(); - cdto.f2 = "f2"; - cdto.f3 = 3; - c3.f1 = cdto; - return c3; - } - - @Override /* C1 */ - public void setF1(T f1) { - this.f1 = f1; - } - - @Override /* C1 */ - public T getF1() { - return f1; - } - } - - public static class CDTO { - public String f2; - public int f3; - } - - - //==================================================================================================== - // Surrogate transforms - //==================================================================================================== - @Test - public void testSurrogates() throws Exception { - pojoSwaps(D2.class); - - JsonSerializer s = new JsonSerializerBuilder().simple().pojoSwaps(D2.class).build(); - JsonParser p = new JsonParserBuilder().pojoSwaps(D2.class).build(); - Object r; - D1 d1 = D1.create(); - - r = s.serialize(d1); - assertEquals("{f2:'f1'}", r); - - d1 = p.parse(r, D1.class); - assertEquals("f1", d1.f1); - - r = getSerializer().serialize(d1); - assertTrue(TestUtils.toString(r).contains("f2")); - - d1 = roundTrip(d1, D1.class); - } - - public static class D1 { - public String f1; - - public static D1 create() { - D1 d1 = new D1(); - d1.f1 = "f1"; - return d1; - } - } - - public static class D2 { - public String f2; - public D2(D1 d1) { - f2 = d1.f1; - } - public D2() { - } - public static D1 valueOf(D2 d2) { - D1 d1 = new D1(); - d1.f1 = d2.f2; - return d1; - } - } -} http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTrimStringsTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTrimStringsTest.java b/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTrimStringsTest.java deleted file mode 100755 index dfac4fe..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/a/rttests/RoundTripTrimStringsTest.java +++ /dev/null @@ -1,97 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.a.rttests; - -import static org.apache.juneau.TestUtils.*; - -import org.apache.juneau.*; -import org.apache.juneau.parser.*; -import org.apache.juneau.serializer.*; -import org.junit.*; - -/** - * Tests for the {@link SerializerContext#SERIALIZER_trimStrings} and {@link ParserContext#PARSER_trimStrings}. - */ -@SuppressWarnings("javadoc") -public class RoundTripTrimStringsTest extends RoundTripTest { - - public RoundTripTrimStringsTest(String label, SerializerBuilder s, ParserBuilder p, int flags) throws Exception { - super(label, s, p, flags); - } - - //==================================================================================================== - // test - //==================================================================================================== - @Test - public void test() throws Exception { - if (isValidationOnly()) - return; - Serializer s = getSerializer(); - Parser p = getParser(); - Object in, a, e; - - Serializer s2 = s.builder().trimStrings(true).build(); - Parser p2 = p.builder().trimStrings(true).build(); - - in = " foo bar "; - e = "foo bar"; - a = p.parse(s2.serialize(in), String.class); - assertEqualObjects(e, a); - a = p2.parse(s.serialize(in), String.class); - assertEqualObjects(e, a); - - in = new ObjectMap("{' foo ': ' bar '}"); - e = new ObjectMap("{foo:'bar'}"); - a = p.parse(s2.serialize(in), ObjectMap.class); - assertEqualObjects(e, a); - a = p2.parse(s.serialize(in), ObjectMap.class); - assertEqualObjects(e, a); - - in = new ObjectList("[' foo ', {' foo ': ' bar '}]"); - e = new ObjectList("['foo',{foo:'bar'}]"); - a = p.parse(s2.serialize(in), ObjectList.class); - assertEqualObjects(e, a); - a = p2.parse(s.serialize(in), ObjectList.class); - assertEqualObjects(e, a); - - in = new A().init1(); - e = new A().init2(); - a = p.parse(s2.serialize(in), A.class); - assertEqualObjects(e, a); - a = p2.parse(s.serialize(in), A.class); - assertEqualObjects(e, a); - } - - public static class A { - public String f1; - public String[] f2; - public ObjectList f3; - public ObjectMap f4; - - public A init1() throws Exception { - f1 = " f1 "; - f2 = new String[]{" f2a ", " f2b "}; - f3 = new ObjectList("[' f3a ',' f3b ']"); - f4 = new ObjectMap("{' foo ':' bar '}"); - return this; - } - - public A init2() throws Exception { - f1 = "f1"; - f2 = new String[]{"f2a", "f2b"}; - f3 = new ObjectList("['f3a','f3b']"); - f4 = new ObjectMap("{'foo':'bar'}"); - return this; - } - } -} http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/csv/CsvTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/csv/CsvTest.java b/juneau-core-test/src/test/java/org/apache/juneau/csv/CsvTest.java deleted file mode 100755 index 84f9abf..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/csv/CsvTest.java +++ /dev/null @@ -1,51 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.csv; - -import static org.junit.Assert.*; - -import java.util.*; - -import org.apache.juneau.serializer.*; -import org.junit.*; - -@SuppressWarnings("javadoc") -public class CsvTest { - - //==================================================================================================== - // testBasic - //==================================================================================================== - @Test - public void testBasic() throws Exception { - List<A> l = new LinkedList<A>(); - l.add(new A("b1",1)); - l.add(new A("b2",2)); - - WriterSerializer s = CsvSerializer.DEFAULT; - String r; - - r = s.serialize(l); - - assertEquals("b,c\nb1,1\nb2,2\n", r); - } - - public static class A { - public String b; - public int c; - - public A(String b, int c) { - this.b = b; - this.c = c; - } - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/dto/atom/AtomTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/dto/atom/AtomTest.java b/juneau-core-test/src/test/java/org/apache/juneau/dto/atom/AtomTest.java deleted file mode 100755 index 91ba021..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/dto/atom/AtomTest.java +++ /dev/null @@ -1,195 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.dto.atom; - -import static org.apache.juneau.TestUtils.*; -import static org.apache.juneau.dto.atom.AtomBuilder.*; -import static org.junit.Assert.*; - -import java.net.*; - -import org.apache.juneau.xml.*; -import org.junit.*; - -@SuppressWarnings("javadoc") -public class AtomTest { - - public Feed createFeed() throws Exception { - return - feed("tag:foo.org", "Title", "2016-12-31T01:02:03-04:00") - .subtitle(text("html").text("Subtitle")) - .links( - link("alternate", "text/html", "http://foo.org/").hreflang("en"), - link("self", "application/atom+xml", "http://foo.org/feed.atom") - ) - .generator( - generator("Example Toolkit").uri("http://www.foo.org/").version("1.0") - ) - .entries( - entry("tag:foo.org", "Title", "2016-12-31T01:02:03-04:00") - .links( - link("alternate", "text/html", "http://foo.org/2005/04/02/atom"), - link("enclosure", "audio/mpeg", "http://foo.org/audio/foobar.mp3").length(1337) - ) - .published("2016-12-31T01:02:03-04:00") - .authors( - person("John Smith").uri(new URI("http://foo.org/")).email("[email protected]") - ) - .contributors( - person("John Smith"), - person("Jane Smith") - ) - .content( - content("xhtml") - .lang("en") - .base("http://foo.org/") - .text("<div><p><i>[Sample content]</i></p></div>") - ) - ); - } - - @Test - public void testNormal() throws Exception { - XmlSerializer s; - XmlParser p = XmlParser.DEFAULT; - String r; - Feed f = createFeed(), f2; - - String expected = - "<feed>\n" - +" <entry>\n" - +" <author>\n" - +" <email>[email protected]</email>\n" - +" <name>John Smith</name>\n" - +" <uri>http://foo.org/</uri>\n" - +" </author>\n" - +" <content base='http://foo.org/' lang='en' type='xhtml'><div><p><i>[Sample content]</i></p></div></content>\n" - +" <contributor>\n" - +" <name>John Smith</name>\n" - +" </contributor>\n" - +" <contributor>\n" - +" <name>Jane Smith</name>\n" - +" </contributor>\n" - +" <id>tag:foo.org</id>\n" - +" <link href='http://foo.org/2005/04/02/atom' rel='alternate' type='text/html'/>\n" - +" <link href='http://foo.org/audio/foobar.mp3' length='1337' rel='enclosure' type='audio/mpeg'/>\n" - +" <published>2016-12-31T01:02:03-04:00</published>\n" - +" <title>Title</title>\n" - +" <updated>2016-12-31T01:02:03-04:00</updated>\n" - +" </entry>\n" - +" <generator uri='http://www.foo.org/' version='1.0'>Example Toolkit</generator>\n" - +" <id>tag:foo.org</id>\n" - +" <link href='http://foo.org/' hreflang='en' rel='alternate' type='text/html'/>\n" - +" <link href='http://foo.org/feed.atom' rel='self' type='application/atom+xml'/>\n" - +" <subtitle type='html'>Subtitle</subtitle>\n" - +" <title>Title</title>\n" - +" <updated>2016-12-31T01:02:03-04:00</updated>\n" - +"</feed>\n"; - - s = new XmlSerializerBuilder().sq().ws().enableNamespaces(false).sortProperties(true).build(); - r = s.serialize(f); - assertEquals(expected, r); - f2 = p.parse(r, Feed.class); - assertEqualObjects(f, f2); - } - - @Test - public void testWithNamespaces() throws Exception { - XmlSerializer s; - XmlParser p = XmlParser.DEFAULT; - String r; - Feed f = createFeed(), f2; - - String expected = - "<atom:feed xmlns='http://www.apache.org/2013/Juneau' xmlns:atom='http://www.w3.org/2005/Atom/' xmlns:xml='http://www.w3.org/XML/1998/namespace'>\n" - +" <atom:entry>\n" - +" <atom:author>\n" - +" <atom:email>[email protected]</atom:email>\n" - +" <atom:name>John Smith</atom:name>\n" - +" <atom:uri>http://foo.org/</atom:uri>\n" - +" </atom:author>\n" - +" <atom:content xml:base='http://foo.org/' xml:lang='en' type='xhtml'><div><p><i>[Sample content]</i></p></div></atom:content>\n" - +" <atom:contributor>\n" - +" <atom:name>John Smith</atom:name>\n" - +" </atom:contributor>\n" - +" <atom:contributor>\n" - +" <atom:name>Jane Smith</atom:name>\n" - +" </atom:contributor>\n" - +" <atom:id>tag:foo.org</atom:id>\n" - +" <atom:link href='http://foo.org/2005/04/02/atom' rel='alternate' type='text/html'/>\n" - +" <atom:link href='http://foo.org/audio/foobar.mp3' length='1337' rel='enclosure' type='audio/mpeg'/>\n" - +" <atom:published>2016-12-31T01:02:03-04:00</atom:published>\n" - +" <atom:title>Title</atom:title>\n" - +" <atom:updated>2016-12-31T01:02:03-04:00</atom:updated>\n" - +" </atom:entry>\n" - +" <atom:generator uri='http://www.foo.org/' version='1.0'>Example Toolkit</atom:generator>\n" - +" <atom:id>tag:foo.org</atom:id>\n" - +" <atom:link href='http://foo.org/' hreflang='en' rel='alternate' type='text/html'/>\n" - +" <atom:link href='http://foo.org/feed.atom' rel='self' type='application/atom+xml'/>\n" - +" <atom:subtitle type='html'>Subtitle</atom:subtitle>\n" - +" <atom:title>Title</atom:title>\n" - +" <atom:updated>2016-12-31T01:02:03-04:00</atom:updated>\n" - +"</atom:feed>\n"; - - s = new XmlSerializerBuilder().sq().ws().enableNamespaces(true).addNamespaceUrisToRoot(true).sortProperties(true).build(); - r = s.serialize(f); - assertEquals(expected, r); - f2 = p.parse(r, Feed.class); - assertEqualObjects(f, f2); - } - - @Test - public void testWithNamespacesWithAtomAsDefault() throws Exception { - XmlSerializer s; - XmlParser p = XmlParser.DEFAULT; - String r; - Feed f = createFeed(), f2; - - String expected = - "<feed xmlns='http://www.w3.org/2005/Atom/' xmlns:xml='http://www.w3.org/XML/1998/namespace'>\n" - +" <entry>\n" - +" <author>\n" - +" <email>[email protected]</email>\n" - +" <name>John Smith</name>\n" - +" <uri>http://foo.org/</uri>\n" - +" </author>\n" - +" <content xml:base='http://foo.org/' xml:lang='en' type='xhtml'><div><p><i>[Sample content]</i></p></div></content>\n" - +" <contributor>\n" - +" <name>John Smith</name>\n" - +" </contributor>\n" - +" <contributor>\n" - +" <name>Jane Smith</name>\n" - +" </contributor>\n" - +" <id>tag:foo.org</id>\n" - +" <link href='http://foo.org/2005/04/02/atom' rel='alternate' type='text/html'/>\n" - +" <link href='http://foo.org/audio/foobar.mp3' length='1337' rel='enclosure' type='audio/mpeg'/>\n" - +" <published>2016-12-31T01:02:03-04:00</published>\n" - +" <title>Title</title>\n" - +" <updated>2016-12-31T01:02:03-04:00</updated>\n" - +" </entry>\n" - +" <generator uri='http://www.foo.org/' version='1.0'>Example Toolkit</generator>\n" - +" <id>tag:foo.org</id>\n" - +" <link href='http://foo.org/' hreflang='en' rel='alternate' type='text/html'/>\n" - +" <link href='http://foo.org/feed.atom' rel='self' type='application/atom+xml'/>\n" - +" <subtitle type='html'>Subtitle</subtitle>\n" - +" <title>Title</title>\n" - +" <updated>2016-12-31T01:02:03-04:00</updated>\n" - +"</feed>\n"; - - s = new XmlSerializerBuilder().sq().ws().defaultNamespace("atom").enableNamespaces(true).addNamespaceUrisToRoot(true).sortProperties(true).build(); - r = s.serialize(f); - assertEquals(expected, r); - f2 = p.parse(r, Feed.class); - assertEqualObjects(f, f2); - } -} http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/ab15d45b/juneau-core-test/src/test/java/org/apache/juneau/dto/cognos/CognosXmlTest.java ---------------------------------------------------------------------- diff --git a/juneau-core-test/src/test/java/org/apache/juneau/dto/cognos/CognosXmlTest.java b/juneau-core-test/src/test/java/org/apache/juneau/dto/cognos/CognosXmlTest.java deleted file mode 100755 index 0f0bdd4..0000000 --- a/juneau-core-test/src/test/java/org/apache/juneau/dto/cognos/CognosXmlTest.java +++ /dev/null @@ -1,111 +0,0 @@ -// *************************************************************************************************************************** -// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * -// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * -// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * -// * with the License. You may obtain a copy of the License at * -// * * -// * http://www.apache.org/licenses/LICENSE-2.0 * -// * * -// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * -// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * -// * specific language governing permissions and limitations under the License. * -// *************************************************************************************************************************** -package org.apache.juneau.dto.cognos; - -import static org.apache.juneau.TestUtils.*; -import static org.junit.Assert.*; - -import java.util.*; - -import org.apache.juneau.*; -import org.apache.juneau.xml.*; -import org.junit.*; - -@SuppressWarnings("javadoc") -public class CognosXmlTest { - - //==================================================================================================== - // test - //==================================================================================================== - @Test - public void test() throws Exception { - String expected = "" - + "<dataset xmlns='http://developer.cognos.com/schemas/xmldata/1/'>\n" - + " <metadata>\n" - + " <item name='asOfDate' type='xs:string' length='12'/>\n" - + " <item name='rateOfReturn' type='xs:double'/>\n" - + " <item name='famAcctIndex' type='xs:string' length='3'/>\n" - + " <item name='rowID' type='xs:string' length='1'/>\n" - + " <item name='brM' type='xs:string' length='1'/>\n" - + " <item name='productLineCode' type='xs:int'/>\n" - + " </metadata>\n" - + " <data>\n" - + " <row>\n" - + " <value>Apr 26, 2002</value>\n" - + " <value>0.21006642</value>\n" - + " <value>JA1</value>\n" - + " <value>F</value>\n" - + " <value>B</value>\n" - + " <value>1</value>\n" - + " </row>\n" - + " <row>\n" - + " <value>Apr 27, 2002</value>\n" - + " <value>0.1111111</value>\n" - + " <value>BBB</value>\n" - + " <value>G</value>\n" - + " <value>B</value>\n" - + " <value>2</value>\n" - + " </row>\n" - + " </data>\n" - + "</dataset>\n"; - - List<Object> rows = new LinkedList<Object>(); - rows.add(new ObjectMap("{asOfDate:'Apr 26, 2002',rateOfReturn:0.21006642,famAcctIndex:'JA1',rowID:'F',brM:'B',productLineCode:1}")); - rows.add(new Item("Apr 27, 2002", 0.1111111, "BBB", "G", "B", 2)); - - Column[] c = { - new Column("asOfDate", "xs:string", 12), - new Column("rateOfReturn", "xs:double"), - new Column("famAcctIndex", "xs:string", 3), - new Column("rowID", "xs:string", 1), - new Column("brM", "xs:string", 1), - new Column("productLineCode", "xs:int") - }; - - XmlSerializer s = new XmlSerializerBuilder() - .ws() - .sq() - .defaultNamespace("cognos") - .ns() - .addNamespaceUrisToRoot(true) - .build(); - - DataSet ds = new DataSet(c, rows, BeanContext.DEFAULT.createSession()); - - String out = s.serialize(ds); - - assertEquals(expected, out); - - // Make sure we can parse it back into a POJO. - DataSet ds2 = XmlParser.DEFAULT.parse(out, DataSet.class); - assertEqualObjects(ds, ds2); - } - - public static class Item { - public String asOfDate; - public double rateOfReturn; - public String famAcctIndex; - public String rowID; - public String brM; - public int productLineCode; - - public Item(String asOfDate, double rateOfReturn, String famAcctIndex, String rowID, String brM, int productLineCode) { - this.asOfDate = asOfDate; - this.rateOfReturn = rateOfReturn; - this.famAcctIndex = famAcctIndex; - this.rowID = rowID; - this.brM = brM; - this.productLineCode = productLineCode; - } - } -} \ No newline at end of file
