2016-03-27 3 views
1

Хотя мои тесты должны быть полными и идти зелеными. Это очень маленькая проблема, с которой мне нужна помощь.Испытание конечной точки отдыха Mockito - Сравнить список с котировками

@ContextConfiguration(locations = { "classpath:integrator-rest.xml" }) 
@RunWith(SpringJUnit4ClassRunner.class) 
@WebAppConfiguration 
public class ProjectBuilderControllerTest { 

@Mock 
private ProjectBuilderController projectBuilderControllerMock; 

@Autowired 
private WebApplicationContext webApplicationContext; 
private MockMvc mockMvc; 

/** 
* @throws java.lang.Exception 
*/ 
@Before 
public void setUp() throws Exception { 
    mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); 
    MockitoAnnotations.initMocks(this); 
    } 

@Test 
public void loadDependencyListMockTest() throws Exception { 

    ArrayList<String> result = new ArrayList<String>(); 
    result.add("spring-core-3.0.1"); 
    result.add("spring-webmvc-4.2.1"); 
    result.add("spring-test-4.0.1"); 
    result.add("junit-4.1"); 

    mockMvc.perform(get("/projectbuilder/dependencyList")).andExpect(status().isOk()); 
    mockMvc.perform(get("/projectbuilder/dependencyList").accept(MediaType.APPLICATION_JSON_UTF8)) 
         .andExpect(status().isOk()) 
         .andExpect(jsonPath("$", Matchers.hasSize(5))) 
         .andExpect(jsonPath("$", Matchers.equalTo((result)))); 
} 

/** 
* @throws java.lang.Exception 
*/ 
@After 
public void tearDown() throws Exception { 
    mockMvc = null; 
} 

} 

Я просто хочу добавить/удалить, чтобы тест проходил. Вот ссылка на xml-файл, из которого я загружаю список зависимостей и возвращает список.

В основном метод loadDependencyList() загружает список зависимостей из XML-файла и возвращает список зависимостей, я просто проверяю, что возвращаемый список согласован.

ИСПЫТАНИЕ ТЕПЕРЬ ПРОХОДИТ! ВОПРОС БЫЛ ПОРЯДОК ВОЗВРАЩЕНИЯ НЕПРАВИЛЬНО

ответ

1

Ответ заключается в том, что Mockito не волнует, будут ли элементы вашего списка, которые являются строками, кавычками или нет, все равно сравнивают его, и тест проходит. Порядок, в котором вы сравниваете, имеет значение. Следовательно, если вы считаете, что ваша проблема связана с кавычками/без кавычек, у вас есть другая проблема.

Например: Я ожидал

<["junit","jax-rs","spring-mvc","spring-context"]> 

и если он вернулся

<[junit,jax-rs,spring-mvc,spring-context]> 

Испытание должно пройти. Помнит, порядок имеет значение.

Смежные вопросы