2014-03-24 29 views
0

我在一個類中定義的自動裝配Autowired豆我想測試:注入枚舉的不同值JUnit測試

@Autowired 
ContextEnum myContext; 

這就是後來的使用:

if(ContextEnum.A.equals(myContext)) { 
// do something 
} else if(ContextEnum.B.equals(myContext)) { 
// do something 
} 

在我的配置爲junits我把它設置返回ContextEnum的特定值,像這樣:

@Configuration 
@Lazy 
public class myJunitConfig { 
    @Bean 
    public ContextEnum getContextEnum() { 
     return ContextEnum.A; 
    } 
} 

我的Junit:

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(classes = { 
    myJunitConfig.class 
}) 
public class ContextTest { 

    @Test 
    public void testContextB() { 
     Input input = createMock(Input.class); 
     expect(input.getId()).return(1L).anyTimes(); 
     client.getHandle().call(); 
    } 
} 

但是,這不允許我測試我的枚舉的不同值。除了在junit上使用setter/constructor注入之外,還有什麼方法可以注入不同的枚舉值?提前致謝。

回答