I am currently working on a Spring project and I want to write some tests. Unfortunately I don't know how to pass the requiered Array.
The Get Request works just fine... Here is my Code:
MainControllerTest.java
private MockMvc mockMvc;
@InjectMocks
private MainController controller;
@Before
public void setUp() throws Exception {
mockMvc = MockMvcBuilders.standaloneSetup(controller)
.build();
}
@Test
public void resetAll() throws Exception {
String[] players = new String[] {"Player 1", "Player 2"};
mockMvc.perform(
MockMvcRequestBuilders.get("http://localhost:8443/api/reset")
)
.andExpect(MockMvcResultMatchers.status().isOk())
.andExpect(MockMvcResultMatchers.content().string("false"));
mockMvc.perform(
MockMvcRequestBuilders.post("http://localhost:8443/api/player").content(players)
);
}
MainController.java
@PostMapping("/player")
public void setPlayersList(@RequestBody String[] players) {
for(int i = 0; i<players.length; i++) {
playersList.add(players[i]);
}
System.out.println(Arrays.toString(playersList.toArray()));
}