Summary Table

Categories Total Count
PII 0
URL 0
DNS 1
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

package gov.va.med.ars.integration;

import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.TestPropertySource;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.ResultActions;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.fasterxml.jackson.databind.SerializationFeature;

import gov.va.med.ars.configuration.AppConfig;
import gov.va.med.ars.configuration.spring.SpringMvcConfig;
import gov.va.med.ars.model.request.UserSearchRequest;

@WebAppConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = { AppConfig.class, SpringMvcConfig.class })
@TestPropertySource(properties = {"arsPropFileLocation = ./src/test/resources/development.properties"})
public class UserAdministrationRestIntegrationTest {
private static final Logger logger = LogManager.getLogger(UserAdministrationRestIntegrationTest.class);

@Autowired
private WebApplicationContext wac;
private MockMvc mockMvc;

@Before
public void setup() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
}

@Test

public void testsearchAllUsers_failure() throws Exception {
UserSearchRequest userSearchRequest = new UserSearchRequest();
userSearchRequest.setCreatedBy("");
userSearchRequest.setDescending(false);
userSearchRequest.setDomain("");
userSearchRequest.setEmail("");
userSearchRequest.setFirstName("");
userSearchRequest.setLastName("");
userSearchRequest.setPageNumber(1);
userSearchRequest.setPageSize(10);
userSearchRequest.setPhone("");
userSearchRequest.setSortColumn("");
userSearchRequest.setUserName("");

ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
ObjectWriter ow = mapper.writer().withDefaultPrettyPrinter();
String requestJson = ow.writeValueAsString(userSearchRequest);

ResultActions result = mockMvc.perform(post("/api/v1/userSearch").contentType(MediaType.APPLICATION_JSON).content(requestJson))
.andDo(print())
.andExpect(status().is5xxServerError())
.andExpect(content().contentType("application/json;charset=UTF-8"));

logger.info("testsearchAllUsers_success:" + result.andReturn().getResponse().getStatus());
assertFalse(HttpStatus.SERVICE_UNAVAILABLE.value() == result.andReturn().getResponse().getStatus());

}

@Test

public void testEditUser_failure() throws Exception {
UserSearchRequest userSearchRequest = null;

ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
ObjectWriter ow = mapper.writer().withDefaultPrettyPrinter();
String requestJson = ow.writeValueAsString(userSearchRequest);
ResultActions result = mockMvc
.perform(post("/api/v1/editUser").contentType(MediaType.APPLICATION_JSON).content(requestJson))
.andDo(print()).andExpect(status().is5xxServerError());

logger.info("testEditUserSuccess:" + result.andReturn().getResponse().getStatus());
assertTrue(HttpStatus.INTERNAL_SERVER_ERROR.value() == result.andReturn().getResponse().getStatus());

}

@Ignore
@Test
public void testgetUserById_failure() throws Exception {
String userId = "
DNS ";
logger.info("integration testing");

ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
ObjectWriter ow = mapper.writer().withDefaultPrettyPrinter();
String requestJson = ow.writeValueAsString(userId);
ResultActions result = mockMvc.perform(
get("/api/v1/userDetails/" + userId).contentType(MediaType.APPLICATION_JSON).content(requestJson))
.andDo(print()).andExpect(status().is5xxServerError());

logger.info("testsearchAllUsers_success:" + result.andReturn().getResponse().getStatus());

}

@Test

public void testdeleteUser_failure() throws Exception {
Long userId = (long) 100;


ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
ObjectWriter ow = mapper.writer().withDefaultPrettyPrinter();
String requestJson = ow.writeValueAsString(userId);
ResultActions result = mockMvc.perform(
get("/api/v1/userDelete/" + userId).contentType(MediaType.APPLICATION_JSON).content(requestJson))
.andDo(print()).andExpect(status().is5xxServerError());

logger.info("testdeleteUserSuccess:" + result.andReturn().getResponse().getStatus());
assertFalse(HttpStatus.OK.value() == result.andReturn().getResponse().getStatus());
}

}