2016-03-27 6 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]> 

を返された場合、テストは合格しなければなりません。覚えている、注文は重要です。

関連する問題