SelectQuery q = new SelectQuery(Artist.class);
q.addOrdering("db:ARTIST_ID", SortOrder.ASCENDING);
List artists = context.performQuery(q);
Artist a1 = (Artist) artists.get(0);
Artist a2 = (Artist) artists.get(1);
assertEquals(2, a1.getPaintingArray().size());
assertEquals(0, a2.getPaintingArray().size());
assertNotNull(context
.getParentDataDomain()
.getSharedSnapshotCache()
.getCachedSnapshot(a1.getObjectId()));
assertNotNull(context
.getParentDataDomain()
.getSharedSnapshotCache()
.getCachedSnapshot(a2.getObjectId()));
RefreshQuery refresh = new RefreshQuery(artists);
context.performQuery(refresh);
assertNull(context
.getParentDataDomain()
.getSharedSnapshotCache()
.getCachedSnapshot(a1.getObjectId()));
assertNull(context
.getParentDataDomain()
.getSharedSnapshotCache()
.getCachedSnapshot(a2.getObjectId()));
assertEquals(PersistenceState.HOLLOW, a1.getPersistenceState());
assertEquals(PersistenceState.HOLLOW, a2.getPersistenceState());
assertTrue(((ValueHolder) a1.readProperty(Artist.PAINTING_ARRAY_PROPERTY))
.isFault());
assertTrue(((ValueHolder) a2.readProperty(Artist.PAINTING_ARRAY_PROPERTY))
.isFault());
}