expect(destCollection.getPermissionsNoLock()).andReturn(destPermissions);
expect(broker.getSubject()).andReturn(subject);
expect(destPermissions.validate(subject, Permission.EXECUTE | Permission.WRITE)).andReturn(true);
expect(newDestCollection.getPermissionsNoLock()).andReturn(newDestPermissions);
expect(broker.getSubject()).andReturn(subject);
expect(newDestPermissions.validate(subject, Permission.EXECUTE | Permission.WRITE)).andReturn(true);
//one sub-document with READ permission
expect(srcCollection.iterator(broker)).andReturn(new ArrayIterator<DocumentImpl>(srcSubDocument));
expect(srcSubDocument.getPermissions()).andReturn(srcSubDocumentPermissions);
expect(broker.getSubject()).andReturn(subject);