public void testCollectionAndMapSchema() throws Exception { if (!RuntimeEnv.COLLECTION_SCHEMA_ON_REPEATED_FIELDS) { System.err .println("RuntimeSchema.COLLECTION_SCHEMA_ON_REPEATED_FIELDS was not enabled."); return; } Schema<PojoFoo> schema = RuntimeSchema.getSchema(PojoFoo.class); Pipe.Schema<PojoFoo> pipeSchema = ((RuntimeSchema<PojoFoo>) schema).getPipeSchema(); PojoFoo p = new PojoFoo().fill(); byte[] data = toByteArray(p, schema); PojoFoo pFromByteArray = new PojoFoo(); mergeFrom(data, 0, data.length, pFromByteArray, schema); assertEquals(p, pFromByteArray); PojoFoo pFromStream = new PojoFoo(); ByteArrayInputStream in = new ByteArrayInputStream(data); mergeFrom(in, pFromStream, schema); assertEquals(p, pFromByteArray); roundTrip(p, schema, pipeSchema); }
private void verifyObjectMapField() throws IOException { ObjectWrapper wrapper = new ObjectWrapper(); wrapper.obj = new PersistentObjectMap<String,Object>(15); Schema<ObjectWrapper> schema = RuntimeSchema.getSchema(ObjectWrapper.class); byte[] data = toByteArray(wrapper, schema); ObjectWrapper parsed = schema.newMessage(); mergeFrom(data, 0, data.length, parsed, schema); assertNotNull(parsed.obj); assertTrue(parsed.obj instanceof PersistentObjectMap); @SuppressWarnings("unchecked") PersistentObjectMap<String,Object> map = (PersistentObjectMap<String,Object>)parsed.obj; assertEquals(15, map.id); }
private void verifyObjectListField() throws IOException { ObjectWrapper wrapper = new ObjectWrapper(); wrapper.obj = new PersistentObjectList<Object>(15); Schema<ObjectWrapper> schema = RuntimeSchema.getSchema(ObjectWrapper.class); byte[] data = toByteArray(wrapper, schema); ObjectWrapper parsed = schema.newMessage(); mergeFrom(data, 0, data.length, parsed, schema); assertNotNull(parsed.obj); assertTrue(parsed.obj instanceof PersistentObjectList); @SuppressWarnings("unchecked") PersistentObjectList<Object> list = (PersistentObjectList<Object>)parsed.obj; assertEquals(15, list.id); }
private void verifyListField() throws IOException { ListWrapper wrapper = new ListWrapper(); wrapper.obj = new PersistentObjectList<Object>(15); Schema<ListWrapper> schema = RuntimeSchema.getSchema(ListWrapper.class); byte[] data = toByteArray(wrapper, schema); ListWrapper parsed = schema.newMessage(); mergeFrom(data, 0, data.length, parsed, schema); assertNotNull(parsed.obj); assertTrue(parsed.obj instanceof PersistentObjectList); @SuppressWarnings("unchecked") PersistentObjectList<Object> list = (PersistentObjectList<Object>)parsed.obj; assertEquals(15, list.id); }
private void verifyMapField() throws IOException { MapWrapper wrapper = new MapWrapper(); wrapper.obj = new PersistentObjectMap<String,Object>(15); Schema<MapWrapper> schema = RuntimeSchema.getSchema(MapWrapper.class); byte[] data = toByteArray(wrapper, schema); MapWrapper parsed = schema.newMessage(); mergeFrom(data, 0, data.length, parsed, schema); assertNotNull(parsed.obj); assertTrue(parsed.obj instanceof PersistentObjectMap); @SuppressWarnings("unchecked") PersistentObjectMap<String,Object> map = (PersistentObjectMap<String,Object>)parsed.obj; assertEquals(15, map.id); }