{
final Maven2ContentClass maven2ContentClass = new Maven2ContentClass();
final RepositoryRegistry repositoryRegistry = mock(RepositoryRegistry.class);
final Repository proxyRepository = mock(Repository.class);
final GroupRepository groupRepository = mock(GroupRepository.class);
final RepositoryKind groupRepositoryKind = mock(RepositoryKind.class);
final RepositoryKind proxyRepositoryKind = mock(RepositoryKind.class);
when(repositoryRegistry.getRepository("foo-group")).thenReturn(groupRepository);
when(groupRepository.getRepositoryContentClass()).thenReturn(maven2ContentClass);
when(proxyRepository.getRepositoryContentClass()).thenReturn(maven2ContentClass);
when(groupRepository.getLocalStatus()).thenReturn(LocalStatus.IN_SERVICE);
when(proxyRepository.getLocalStatus()).thenReturn(LocalStatus.IN_SERVICE);
when(groupRepository.getRepositoryKind()).thenReturn(groupRepositoryKind);
when(proxyRepository.getRepositoryKind()).thenReturn(proxyRepositoryKind);
when(groupRepositoryKind.isFacetAvailable(GroupRepository.class)).thenReturn(true);
when(proxyRepositoryKind.isFacetAvailable(ProxyRepository.class)).thenReturn(true);
when(groupRepository.adaptToFacet(GroupRepository.class)).thenReturn(groupRepository);
when(groupRepository.getMemberRepositories()).thenReturn(Arrays.asList(proxyRepository));
final SnapshotRemovalResult result =
new DefaultSnapshotRemover(repositoryRegistry, mock(Walker.class), maven2ContentClass)