use of gov.cms.ab2d.common.model.Role in project ab2d by CMSgov.
the class AdminAPIPdpClientTests method testCreateDuplicateClient.
@Test
public void testCreateDuplicateClient() throws Exception {
PdpClientDTO pdpClientDTO = new PdpClientDTO();
pdpClientDTO.setClientId(TEST_CLIENT);
pdpClientDTO.setEnabled(true);
pdpClientDTO.setContract(buildContractDTO());
pdpClientDTO.setRole(ADMIN_ROLE);
Role role = roleService.findRoleByName(ADMIN_ROLE);
pdpClientDTO.setRole(role.getName());
ObjectMapper mapper = getMapper();
this.mockMvc.perform(post(API_PREFIX_V1 + ADMIN_PREFIX + CLIENT_URL).contentType(MediaType.APPLICATION_JSON).content(mapper.writeValueAsString(pdpClientDTO)).header("Authorization", "Bearer " + token));
this.mockMvc.perform(post(API_PREFIX_V1 + ADMIN_PREFIX + CLIENT_URL).contentType(MediaType.APPLICATION_JSON).content(mapper.writeValueAsString(pdpClientDTO)).header("Authorization", "Bearer " + token)).andExpect(status().is(500)).andExpect(jsonPath("$.resourceType", Is.is("OperationOutcome"))).andExpect(jsonPath("$.issue[0].severity", Is.is("error"))).andExpect(jsonPath("$.issue[0].code", Is.is("invalid"))).andExpect(jsonPath("$.issue[0].details.text", Is.is("An internal error occurred")));
PdpClient anotherPdpClient = pdpClientRepository.findByClientId(("anotherEmail@test.com"));
dataSetup.queueForCleanup(anotherPdpClient);
}
use of gov.cms.ab2d.common.model.Role in project ab2d by CMSgov.
the class AdminAPIPdpClientTests method testCreateClientAttestor.
@Test
public void testCreateClientAttestor() throws Exception {
PdpClientDTO pdpClientDTO = new PdpClientDTO();
pdpClientDTO.setClientId(TEST_CLIENT);
pdpClientDTO.setOrganization(TEST_ORG);
pdpClientDTO.setEnabled(true);
pdpClientDTO.setContract(buildContractDTO());
Role role = roleService.findRoleByName(ATTESTOR_ROLE);
pdpClientDTO.setRole(role.getName());
ObjectMapper mapper = getMapper();
MvcResult mvcResult = this.mockMvc.perform(post(API_PREFIX_V1 + ADMIN_PREFIX + CLIENT_URL).contentType(MediaType.APPLICATION_JSON).content(mapper.writeValueAsString(pdpClientDTO)).header("Authorization", "Bearer " + token)).andReturn();
assertEquals(201, mvcResult.getResponse().getStatus());
String result = mvcResult.getResponse().getContentAsString();
PdpClientDTO createdPdpClientDTO = mapper.readValue(result, PdpClientDTO.class);
assertEquals(createdPdpClientDTO.getClientId(), pdpClientDTO.getClientId());
assertEquals(createdPdpClientDTO.getEnabled(), pdpClientDTO.getEnabled());
assertEquals(createdPdpClientDTO.getContract().getContractNumber(), pdpClientDTO.getContract().getContractNumber());
assertEquals(createdPdpClientDTO.getContract().getContractName(), pdpClientDTO.getContract().getContractName());
assertEquals(createdPdpClientDTO.getRole(), pdpClientDTO.getRole());
}
use of gov.cms.ab2d.common.model.Role in project ab2d by CMSgov.
the class PdpClientServiceImpl method getGrantedAuth.
/**
* Retrieve the list of granted authorities from the client's roles
*
* @param pdpClient - the client
* @return - the granted authorities
*/
@Override
public List<GrantedAuthority> getGrantedAuth(PdpClient pdpClient) {
List<GrantedAuthority> authorities = new ArrayList<>();
for (Role role : pdpClient.getRoles()) {
log.info("Adding role {}", role.getName());
authorities.add(new SimpleGrantedAuthority(role.getName()));
}
return authorities;
}
use of gov.cms.ab2d.common.model.Role in project ab2d by CMSgov.
the class WorkerDataSetup method savePdpClient.
private PdpClient savePdpClient(String clientId, Contract contract, List<String> clientRoles) {
PdpClient pdpClient = new PdpClient();
pdpClient.setClientId(clientId);
pdpClient.setOrganization("PDP-" + clientId);
pdpClient.setContract(contract);
pdpClient.setEnabled(true);
pdpClient.setMaxParallelJobs(3);
for (String clientRole : clientRoles) {
// Use existing role or create a new one for the client
Role role = roleRepository.findRoleByName(clientRole).orElseGet(() -> {
Role newRole = new Role();
newRole.setName(clientRole);
queueForCleanup(clientRole);
return roleRepository.save(newRole);
});
pdpClient.addRole(role);
}
pdpClient = pdpClientRepository.saveAndFlush(pdpClient);
queueForCleanup(pdpClient);
return pdpClient;
}
use of gov.cms.ab2d.common.model.Role in project ab2d by CMSgov.
the class AdminAPIPdpClientTests method testCreateClient.
@Test
public void testCreateClient() throws Exception {
PdpClientDTO pdpClientDTO = new PdpClientDTO();
pdpClientDTO.setClientId(TEST_CLIENT);
pdpClientDTO.setOrganization(TEST_ORG);
pdpClientDTO.setEnabled(true);
pdpClientDTO.setContract(buildContractDTO());
pdpClientDTO.setRole(ADMIN_ROLE);
Role role = roleService.findRoleByName(ADMIN_ROLE);
pdpClientDTO.setRole(role.getName());
ObjectMapper mapper = getMapper();
MvcResult mvcResult = this.mockMvc.perform(post(API_PREFIX_V1 + ADMIN_PREFIX + CLIENT_URL).contentType(MediaType.APPLICATION_JSON).content(mapper.writeValueAsString(pdpClientDTO)).header("Authorization", "Bearer " + token)).andReturn();
assertEquals(201, mvcResult.getResponse().getStatus());
String result = mvcResult.getResponse().getContentAsString();
PdpClientDTO createdPdpClientDTO = mapper.readValue(result, PdpClientDTO.class);
assertEquals(createdPdpClientDTO.getClientId(), pdpClientDTO.getClientId());
assertEquals(createdPdpClientDTO.getEnabled(), pdpClientDTO.getEnabled());
assertEquals(createdPdpClientDTO.getContract().getContractNumber(), pdpClientDTO.getContract().getContractNumber());
assertEquals(createdPdpClientDTO.getContract().getContractName(), pdpClientDTO.getContract().getContractName());
assertEquals(createdPdpClientDTO.getRole(), pdpClientDTO.getRole());
}
Aggregations