RED-9351 - Redaction skipped after changing only type + paragraph
- add junit test Signed-off-by: Corina Olariu <corina.olariu.ext@knecon.com>
This commit is contained in:
parent
0f782c802d
commit
11d050a92e
@ -0,0 +1,57 @@
|
|||||||
|
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.client.ComponentClient;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.client.ComponentLogClient;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.client.DossierTemplateClient;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.service.FileTesterAndProvider;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.utils.TokenService;
|
||||||
|
|
||||||
|
import feign.FeignException;
|
||||||
|
|
||||||
|
public class ComponentTest extends AbstractPersistenceServerServiceTest {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ObjectMapper objectMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DossierTesterAndProvider dossierTesterAndProvider;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private FileTesterAndProvider fileTesterAndProvider;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ComponentClient componentClient;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ComponentLogClient componentLogClient;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DossierTemplateClient dossierTemplateClient;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
protected TokenService tokenService;
|
||||||
|
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetComponentLogWithoutAppropriateRoles() {
|
||||||
|
|
||||||
|
var dossier = dossierTesterAndProvider.provideTestDossier();
|
||||||
|
var dossierTemplate = dossierTemplateClient.getDossierTemplate(dossier.getDossierTemplateId());
|
||||||
|
var file = fileTesterAndProvider.testAndProvideFile(dossier, "filename");
|
||||||
|
|
||||||
|
Assertions.assertThrows(FeignException.NotFound.class, () -> componentClient.getComponents(dossierTemplate.getId(), dossier.getId(), file.getFileId(), true));
|
||||||
|
|
||||||
|
tokenService.setUser("manageradmin4@test.com", "secret");
|
||||||
|
|
||||||
|
Assertions.assertThrows(FeignException.Forbidden.class, () -> componentClient.getComponents(dossierTemplate.getId(), dossier.getId(), file.getFileId(), true));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -6,6 +6,7 @@ import static com.iqser.red.service.peristence.v1.server.integration.utils.Mongo
|
|||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@ -330,6 +331,16 @@ public abstract class AbstractPersistenceServerServiceTest {
|
|||||||
.isActive(true)
|
.isActive(true)
|
||||||
.roles(Set.of(getAllRoles()))
|
.roles(Set.of(getAllRoles()))
|
||||||
.build());
|
.build());
|
||||||
|
Set<String> allRolesWithoutValid = Arrays.stream(getAllRoles())
|
||||||
|
.collect(Collectors.toSet());
|
||||||
|
allRolesWithoutValid.remove("RED_USER");
|
||||||
|
allRolesWithoutValid.remove("RED_MANAGER");
|
||||||
|
allUsers.add(com.iqser.red.service.persistence.management.v1.processor.service.users.model.User.builder()
|
||||||
|
.userId("manageradmin4@test.com")
|
||||||
|
.email("manageradmin4@test.com")
|
||||||
|
.isActive(true)
|
||||||
|
.roles(allRolesWithoutValid)
|
||||||
|
.build());
|
||||||
when(usersClient.getAllUsers(false)).thenReturn(allUsers);
|
when(usersClient.getAllUsers(false)).thenReturn(allUsers);
|
||||||
when(usersClient.getAllUsers(true)).thenReturn(allUsers);
|
when(usersClient.getAllUsers(true)).thenReturn(allUsers);
|
||||||
// doNothing().when(pdfTronRedactionClient).testDigitalCurrentSignature(Mockito.any());
|
// doNothing().when(pdfTronRedactionClient).testDigitalCurrentSignature(Mockito.any());
|
||||||
@ -618,8 +629,17 @@ public abstract class AbstractPersistenceServerServiceTest {
|
|||||||
@Bean
|
@Bean
|
||||||
public InMemoryUserDetailsManager userDetailsService(PasswordEncoder passwordEncoder) {
|
public InMemoryUserDetailsManager userDetailsService(PasswordEncoder passwordEncoder) {
|
||||||
|
|
||||||
UserDetails user = User.withUsername("manageradmin1@test.com").password(passwordEncoder.encode("secret")).roles(getAllRoles()).authorities(getAllRoles()).build();
|
var allRoles = getAllRoles();
|
||||||
return new InMemoryUserDetailsManager(user);
|
UserDetails user = User.withUsername("manageradmin1@test.com").password(passwordEncoder.encode("secret")).roles(allRoles).authorities(getAllRoles()).build();
|
||||||
|
var allRolesWithoutRedUserOrRedManager = Arrays.stream(allRoles)
|
||||||
|
.filter(s -> !(s.equalsIgnoreCase(ApplicationRoles.RED_USER_ROLE) || s.equalsIgnoreCase(ApplicationRoles.RED_MANAGER_ROLE)))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
UserDetails userWithoutRedUserOrRedManager = User.withUsername("manageradmin4@test.com")
|
||||||
|
.password(passwordEncoder.encode("secret"))
|
||||||
|
.roles(allRolesWithoutRedUserOrRedManager.toArray(new String[0]))
|
||||||
|
.authorities(getAllRoles())
|
||||||
|
.build();
|
||||||
|
return new InMemoryUserDetailsManager(user, userWithoutRedUserOrRedManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user