@WithMockUser(roles = "ADMIN")
@Test
public void testDeleteAll() throws Exception {

    DiscordSnowflake guildId = generateUniqueSnowflakeId();
    DiscordSnowflake botId = generateUniqueSnowflakeId();
    String[] current = this.mapper.readValue(this.mockMvc.perform(get(urlTemplate, guildId, botId))
            .andReturn()
            .getResponse().getContentAsString(), com.fredboat.backend.quarterdeck.rest.v1.transfer.Prefix.class)
            .getPrefixes();
    this.mockMvc.perform(
            delete(urlTemplate, guildId, botId)
                    .content(this.mapper.writeValueAsString(current))
                    .contentType(MediaType.APPLICATION_JSON))
            .andExpect(status().isOk())
            .andExpect(content().contentType(MediaType.APPLICATION_JSON_VALUE))
            .andExpect(jsonPath("$.guildId", both(isA(String.class)).and(is(guildId.getSnowflakeId()))))
            .andExpect(jsonPath("$.botId", both(isA(String.class)).and(is(botId.getSnowflakeId()))))
            //ensure the default ones are returned after emptying it completely
            .andExpect(jsonPath("$.prefixes", hasItems(Prefix.DEFAULT_PREFIXES.toArray(new String[0]))))
            .andExpect(jsonPath("$.prefixes.length()", is(Prefix.DEFAULT_PREFIXES.size())));
}