### Question:
ViewBasedCollection implements InvocationHandler { public Collection<BulkDeleteDocument> getPendingRemoval() { return pendingRemoval; } ViewBasedCollection(String id, CouchDbConnector couchDbConnector,
			Class<?> clazz, DocumentReferences documentReferences,
			ConstructibleAnnotatedCollection constructibleField); @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="BC_BAD_CAST_TO_ABSTRACT_COLLECTION") Object invoke(Object proxy, Method method, Object[] args); boolean initialized(); Collection<BulkDeleteDocument> getPendingRemoval();  }### Answer:
@Test public void given_cascadeType_NONE_then_removed_element_should_not_be_added_to_pending_removal_list() { setupHandlerAndProxy(getRefsWithCascadeNone()); proxy.size(); proxy.remove(child1); assertTrue(collectionHandler.getPendingRemoval().isEmpty()); }
@Test public void given_cascadeType_ALL_then_removed_element_should_be_added_to_pending_removal_list() { setupHandlerAndProxy(getRefsWithCascadeAll()); proxy.size(); proxy.remove(child1); assertEquals(1, collectionHandler.getPendingRemoval().size()); }