package org.berzerkula.builddb.controllers; import org.berzerkula.builddb.config.SecurityConfig; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Import; import org.springframework.security.test.context.support.WithMockUser; import org.springframework.test.web.servlet.MockMvc; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view; @Import(SecurityConfig.class) @AutoConfigureMockMvc @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) class BuilddbDashboardControllerTest { @Autowired private MockMvc mockMvc; @Test @WithMockUser void shouldReturnActuatorDashboardView() throws Exception { this.mockMvc.perform(get("/actuatorDashboard")) .andExpect(status().isOk()) .andExpect(view().name("actuatorDashboard")) .andDo(print()); } @Test @WithMockUser void shouldReturnAdminView() throws Exception { this.mockMvc.perform(get("/admin")) .andExpect(status().isOk()) .andExpect(view().name("admin")) .andDo(print()); } @Test @WithMockUser void shouldReturnClientView() throws Exception { this.mockMvc.perform(get("/client")) .andExpect(status().isOk()) .andExpect(view().name("client")) .andDo(print()); } @Test @WithMockUser void shouldReturnUserView() throws Exception { this.mockMvc.perform(get("/user")) .andExpect(status().isOk()) .andExpect(view().name("user")) .andDo(print()); } }