Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package br.com.battlehost;
- import org.assertj.core.util.Sets;
- import org.junit.Before;
- import org.junit.Test;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.test.web.servlet.MockMvc;
- import org.springframework.test.web.servlet.MvcResult;
- import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
- import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
- import org.springframework.test.web.servlet.setup.MockMvcBuilders;
- import br.com.battlehost.api.entities.Machine;
- import br.com.battlehost.api.type.OSImage;
- import br.com.battlehost.repository.MachineRepository;
- import br.com.battlehost.resources.MetricsResource;
- public class MetricsControllerTest extends KvmProjectApplicationTest {
- private MockMvc mockMvc;
- @Autowired
- private MetricsResource metricsResource;
- @Autowired
- private MachineRepository machineRepository;
- @Before
- public void setUp() {
- this.mockMvc = MockMvcBuilders.standaloneSetup(metricsResource).build();
- machineRepository.deleteAll();
- Machine machine = new Machine("1", 1024L, 512L, 12L, 500L, System.currentTimeMillis(), 1L, 8, Sets.newHashSet(),
- OSImage.CENTOS_6, Sets.newHashSet());
- machineRepository.save(machine);
- }
- @Test
- public void nonexistentUserCannotGetToken() throws Exception {
- String username = "existentuser";
- String password = "password";
- String body = "{\"username\":\"" + username + "\", \"password\":\" "
- + password + "\"}";
- mockMvc.perform(MockMvcRequestBuilders.post("/v2/token")
- .content(body))
- .andExpect(status().isForbidden()).andReturn();
- }
- @Test
- public void existentUserCanGetTokenAndAuthentication() throws Exception {
- String username = "existentuser";
- String password = "password";
- String body = "{\"username\":\"" + username + "\", \"password\":\" "
- + password + "\"}";
- MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post("/v2/token")
- .content(body))
- .andExpect(status().isOk()).andReturn();
- String response = result.getResponse().getContentAsString();
- response = response.replace("{\"access_token\": \"", "");
- String token = response.replace("\"}", "");
- mockMvc.perform(MockMvcRequestBuilders.get("/metrics/daemon/1/memory/total")
- .header("Authorization", "Bearer " + token))
- .andExpect(status().isOk());
- }
- @Test
- public void shouldNotAllowAccessToUnauthenticatedUsers() throws Exception {
- mockMvc.perform(MockMvcRequestBuilders.get("/metrics/daemon/1/memory/total")).andExpect(status().isForbidden());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement