1 package com.thoughtworks.xstream.objecttree.reflection; 2 3 import com.thoughtworks.someobjects.X; 4 import com.thoughtworks.someobjects.Y; 5 import com.thoughtworks.xstream.objecttree.ObjectTree; 6 import junit.framework.TestCase; 7 8 public class ObjectGraphReaderTest extends TestCase { 9 private X x; 10 private Y y; 11 private ObjectTree reader; 12 private ObjectFactory objectFactory = new SunReflectionObjectFactory(); 13 14 protected void setUp() throws Exception { 15 super.setUp(); 16 x = new X(); 17 x.aStr = "hello"; 18 x.anInt = 22; 19 20 y = new Y(); 21 y.yField = "world"; 22 x.innerObj = y; 23 24 reader = new ReflectionObjectGraph(x, objectFactory); 25 } 26 27 public void testReadsSimpleFieldsOfAnObject() { 28 reader.push("aStr"); 29 assertEquals("hello", reader.get()); 30 reader.pop(); 31 32 reader.push("anInt"); 33 assertEquals(new Integer(22), reader.get()); 34 reader.pop(); 35 36 reader.push("innerObj"); 37 assertEquals(y, reader.get()); 38 reader.pop(); 39 } 40 41 public void testReadsFieldsOfNestedObjects() { 42 reader.push("aStr"); 43 assertEquals("hello", reader.get()); 44 reader.pop(); 45 46 reader.push("innerObj"); 47 reader.push("yField"); 48 assertEquals("world", reader.get()); 49 reader.pop(); 50 reader.pop(); 51 52 reader.push("anInt"); 53 assertEquals(new Integer(22), reader.get()); 54 reader.pop(); 55 } 56 57 }

This page was automatically generated by Maven