authorizedTestChildEntity.setShouldBeReadable(true);
CrysonTestChildEntity unauthorizedTestChildEntity = new CrysonTestChildEntity();
unauthorizedTestChildEntity.setId(200L);
unauthorizedTestChildEntity.setShouldBeReadable(false);
CrysonTestEntity testEntity = new CrysonTestEntity();
testEntity.setId(1L);
testEntity.setVersion(1L);
testEntity.setName("test");
testEntity.setChildEntities(Sets.newLinkedHashSet(Arrays.asList(authorizedTestChildEntity, unauthorizedTestChildEntity)));
String serializedEntity = serializer.serialize(testEntity, Sets.newHashSet("childEntities"));
assertEquals("{\"id\":1,\"name\":\"test\",\"version\":1,\"crysonEntityClass\":\"CrysonTestEntity\",\"doubleId\":2,\"childEntities\":[{\"id\":100,\"parent\":null,\"crysonEntityClass\":\"CrysonTestChildEntity\"},{\"id\":200,\"crysonEntityClass\":\"CrysonTestChildEntity\",\"crysonUnauthorized\":true}]}", serializedEntity);
}