Advertisement
Guest User

Untitled

a guest
May 6th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. package br.com.battlehost;
  2.  
  3. import org.assertj.core.util.Sets;
  4. import org.junit.Before;
  5. import org.junit.Test;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.test.web.servlet.MockMvc;
  8. import org.springframework.test.web.servlet.MvcResult;
  9. import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
  10. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
  11. import org.springframework.test.web.servlet.setup.MockMvcBuilders;
  12.  
  13. import br.com.battlehost.api.entities.Machine;
  14. import br.com.battlehost.api.type.OSImage;
  15. import br.com.battlehost.repository.MachineRepository;
  16. import br.com.battlehost.resources.MetricsResource;
  17.  
  18. public class MetricsControllerTest extends KvmProjectApplicationTest {
  19.  
  20. private MockMvc mockMvc;
  21.  
  22. @Autowired
  23. private MetricsResource metricsResource;
  24.  
  25. @Autowired
  26. private MachineRepository machineRepository;
  27.  
  28. @Before
  29. public void setUp() {
  30. this.mockMvc = MockMvcBuilders.standaloneSetup(metricsResource).build();
  31.  
  32. machineRepository.deleteAll();
  33.  
  34. Machine machine = new Machine("1", 1024L, 512L, 12L, 500L, System.currentTimeMillis(), 1L, 8, Sets.newHashSet(),
  35. OSImage.CENTOS_6, Sets.newHashSet());
  36.  
  37. machineRepository.save(machine);
  38. }
  39.  
  40. @Test
  41. public void nonexistentUserCannotGetToken() throws Exception {
  42. String username = "existentuser";
  43. String password = "password";
  44.  
  45. String body = "{\"username\":\"" + username + "\", \"password\":\" "
  46. + password + "\"}";
  47.  
  48. mockMvc.perform(MockMvcRequestBuilders.post("/v2/token")
  49. .content(body))
  50. .andExpect(status().isForbidden()).andReturn();
  51. }
  52.  
  53. @Test
  54. public void existentUserCanGetTokenAndAuthentication() throws Exception {
  55. String username = "existentuser";
  56. String password = "password";
  57.  
  58. String body = "{\"username\":\"" + username + "\", \"password\":\" "
  59. + password + "\"}";
  60.  
  61. MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post("/v2/token")
  62. .content(body))
  63. .andExpect(status().isOk()).andReturn();
  64.  
  65. String response = result.getResponse().getContentAsString();
  66. response = response.replace("{\"access_token\": \"", "");
  67. String token = response.replace("\"}", "");
  68.  
  69. mockMvc.perform(MockMvcRequestBuilders.get("/metrics/daemon/1/memory/total")
  70. .header("Authorization", "Bearer " + token))
  71. .andExpect(status().isOk());
  72. }
  73.  
  74. @Test
  75. public void shouldNotAllowAccessToUnauthenticatedUsers() throws Exception {
  76. mockMvc.perform(MockMvcRequestBuilders.get("/metrics/daemon/1/memory/total")).andExpect(status().isForbidden());
  77. }
  78.  
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement