mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-07-04 15:58:06 +02:00
Implement namespace configurations & permissions
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com> Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com> Reviewed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
This commit is contained in:
@@ -98,7 +98,10 @@ class NamespaceRootResourceTest {
|
||||
|
||||
@BeforeEach
|
||||
void setUpResources() {
|
||||
NamespaceToNamespaceDtoMapper namespaceMapper = new NamespaceToNamespaceDtoMapper(links, searchEngine);
|
||||
NamespaceToNamespaceDtoMapper namespaceMapper = new NamespaceToNamespaceDtoMapperImpl();
|
||||
namespaceMapper.setLinks(links);
|
||||
namespaceMapper.setSearchEngine(searchEngine);
|
||||
namespaceMapper.setNamespaceManager(namespaceManager);
|
||||
NamespaceCollectionToDtoMapper namespaceCollectionToDtoMapper = new NamespaceCollectionToDtoMapper(namespaceMapper, links);
|
||||
RepositoryPermissionCollectionToDtoMapper repositoryPermissionCollectionToDtoMapper = new RepositoryPermissionCollectionToDtoMapper(repositoryPermissionToRepositoryPermissionDtoMapper, links);
|
||||
RepositoryPermissionDtoToRepositoryPermissionMapperImpl dtoToModelMapper = new RepositoryPermissionDtoToRepositoryPermissionMapperImpl();
|
||||
|
||||
@@ -96,7 +96,7 @@ class PermissionOverviewToPermissionOverviewDtoMapperTest {
|
||||
|
||||
@BeforeEach
|
||||
void initNamespaceMapper() {
|
||||
when(namespaceToNamespaceDtoMapper.map(any()))
|
||||
when(namespaceToNamespaceDtoMapper.map(any(String.class)))
|
||||
.thenAnswer(invocation -> new NamespaceDto(invocation.getArgument(0, String.class), Links.emptyLinks()));
|
||||
}
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ import static org.hamcrest.Matchers.containsInAnyOrder;
|
||||
import static org.hamcrest.Matchers.hasSize;
|
||||
import static org.hamcrest.Matchers.nullValue;
|
||||
import static org.junit.Assert.assertSame;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.mockito.Mockito.any;
|
||||
import static org.mockito.Mockito.anyObject;
|
||||
import static org.mockito.Mockito.verify;
|
||||
@@ -239,12 +239,24 @@ public class DefaultAuthorizationCollectorTest {
|
||||
when(repositoryDAO.getAll()).thenReturn(newArrayList(heartOfGold, puzzle42));
|
||||
when(namespaceDao.get(heartOfGold.getNamespace())).thenReturn(of(heartOfGoldNamespace));
|
||||
when(namespaceDao.get(puzzle42.getNamespace())).thenReturn(of(puzzleNamespace));
|
||||
when(namespaceDao.allWithPermissions()).thenReturn(asList(heartOfGoldNamespace, puzzleNamespace));
|
||||
|
||||
// execute and assert
|
||||
AuthorizationInfo authInfo = collector.collect();
|
||||
assertThat(authInfo.getRoles(), Matchers.containsInAnyOrder(Role.USER));
|
||||
assertThat(authInfo.getObjectPermissions(), nullValue());
|
||||
assertThat(authInfo.getStringPermissions(), containsInAnyOrder("user:autocomplete", "group:autocomplete", "user:changePassword:trillian", "repository:read,pull:one", "repository:read,pull,push:two", "user:read:trillian", "user:changeApiKeys:trillian", "user:changePublicKeys:trillian"));
|
||||
assertThat(authInfo.getStringPermissions(), containsInAnyOrder(
|
||||
"user:autocomplete",
|
||||
"group:autocomplete",
|
||||
"user:changePassword:trillian",
|
||||
"repository:read,pull:one",
|
||||
"repository:read,pull,push:two",
|
||||
"namespace:read,pull:hitchhiker",
|
||||
"namespace:read,pull,push:guide",
|
||||
"user:read:trillian",
|
||||
"user:changeApiKeys:trillian",
|
||||
"user:changePublicKeys:trillian")
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user