public void testGetFromCopiedObj() { BinaryObject objStr = builder(GridBinaryTestClasses.TestObjectAllTypes.class.getName()) .setField("str", "aaa") .build(); BinaryObjectBuilderImpl builder = builder(objStr); assertEquals("aaa", builder.getField("str")); builder.setField("str", "bbb"); assertEquals("bbb", builder.getField("str")); assertNull(builder.getField("i_")); TestCase.assertEquals( "bbb", builder.build().<GridBinaryTestClasses.TestObjectAllTypes>deserialize().str); }
public void testPlainBinaryObjectCopyFrom() { GridBinaryTestClasses.TestObjectPlainBinary obj = new GridBinaryTestClasses.TestObjectPlainBinary( toBinary(new GridBinaryTestClasses.TestObjectAllTypes())); BinaryObjectBuilderImpl builder = builder(toBinary(obj)); assertTrue(builder.getField("plainBinary") instanceof BinaryObject); GridBinaryTestClasses.TestObjectPlainBinary deserialized = builder.build().deserialize(); assertTrue(deserialized.plainBinary != null); }
public void testRemoveFromExistingObjectAfterGet() { GridBinaryTestClasses.TestObjectAllTypes obj = new GridBinaryTestClasses.TestObjectAllTypes(); obj.setDefaultData(); obj.enumArr = null; BinaryObjectBuilderImpl builder = builder(toBinary(obj)); builder.getField("i_"); builder.removeField("str"); TestCase.assertNull( builder.build().<GridBinaryTestClasses.TestObjectAllTypes>deserialize().str); }
@SuppressWarnings("unchecked") public void testCopyFromInnerObjects() { ArrayList<Object> list = new ArrayList<>(); list.add(new GridBinaryTestClasses.TestObjectAllTypes()); list.add(list.get(0)); GridBinaryTestClasses.TestObjectContainer c = new GridBinaryTestClasses.TestObjectContainer(list); BinaryObjectBuilderImpl builder = builder(toBinary(c)); builder.<List>getField("foo").add("!!!"); BinaryObject res = builder.build(); GridBinaryTestClasses.TestObjectContainer deserialized = res.deserialize(); List deserializedList = (List) deserialized.foo; assertSame(deserializedList.get(0), deserializedList.get(1)); assertEquals("!!!", deserializedList.get(2)); assertTrue(deserializedList.get(0) instanceof GridBinaryTestClasses.TestObjectAllTypes); }