diff options
Diffstat (limited to 'src/jaegertracing/thrift/lib/java/test/org/apache/thrift/TestDeepCopy.java')
-rw-r--r-- | src/jaegertracing/thrift/lib/java/test/org/apache/thrift/TestDeepCopy.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/lib/java/test/org/apache/thrift/TestDeepCopy.java b/src/jaegertracing/thrift/lib/java/test/org/apache/thrift/TestDeepCopy.java new file mode 100644 index 000000000..acafaef10 --- /dev/null +++ b/src/jaegertracing/thrift/lib/java/test/org/apache/thrift/TestDeepCopy.java @@ -0,0 +1,34 @@ +package org.apache.thrift; + +import junit.framework.TestCase; +import thrift.test.DeepCopyBar; +import thrift.test.DeepCopyFoo; + +public class TestDeepCopy extends TestCase { + + public void testDeepCopy() throws Exception { + final DeepCopyFoo foo = new DeepCopyFoo(); + + foo.addToL(new DeepCopyBar()); + foo.addToS(new DeepCopyBar()); + foo.putToM("test 3", new DeepCopyBar()); + + foo.addToLi(new thrift.test.Object()); + foo.addToSi(new thrift.test.Object()); + foo.putToMi("test 3", new thrift.test.Object()); + + foo.setBar(new DeepCopyBar()); + + final DeepCopyFoo deepCopyFoo = foo.deepCopy(); + + assertNotSame(foo.getBar(), deepCopyFoo.getBar()); + + assertNotSame(foo.getL().get(0), deepCopyFoo.getL().get(0)); + assertNotSame(foo.getS().toArray(new DeepCopyBar[0])[0], deepCopyFoo.getS().toArray(new DeepCopyBar[0])[0]); + assertNotSame(foo.getM().get("test 3"), deepCopyFoo.getM().get("test 3")); + + assertNotSame(foo.getLi().get(0), deepCopyFoo.getLi().get(0)); + assertNotSame(foo.getSi().toArray(new thrift.test.Object[0])[0], deepCopyFoo.getSi().toArray(new thrift.test.Object[0])[0]); + assertNotSame(foo.getMi().get("test 3"), deepCopyFoo.getMi().get("test 3")); + } +} |