Утверждение списка в ответе Json - PullRequest
0 голосов
/ 28 октября 2019

Привет. Я пытаюсь написать модульный тест для моего контроллера и подтверждаю ожидаемый JSON. Мой контроллер возвращает список идентификаторов, но порядок идентификаторов в списке отличается при каждом запуске. Поэтому последующие ожидания иногда проходят и иногда терпят неудачу.

 this.mockMvc.perform(get(BASE_URL).contentType(MediaType.APPLICATION_JSON))
                .andExpect(status().isOk())
                .andExpect(jsonPath("[0].name", equalTo(NAME1)))
                .andExpect(jsonPath("[0].ids[0]", equalTo(IDS1[1])))
                .andExpect(jsonPath("[0].ids[1]", equalTo(IDS1[0])))
                .andExpect(jsonPath("[0].ids[2]", equalTo(DUMMY.getId())))
                .andExpect(jsonPath("[0].ids[3]").doesNotExist())
                .andExpect(jsonPath("[1].name").doesNotExist())
                .andExpect(jsonPath("[1].ids[1]").doesNotExist());
    }

Так что мне действительно нужно проверить, есть ли у Json эти 3 идентификатора, вместо того, чтобы проверять, существуют ли они с данным индексом, таким как jsonPath ("[0] .ids[0]. Поэтому мне нужно подтвердить, что json включает эти 3 идентификатора, независимо от того, в каком порядке. Как я могу это сделать?

...