2014-03-24 2 views
0

내가 테스트 할 JUnit 테스트에 대한 열거의 서로 다른 값을 주입 junits 내 설정에서내가 클래스에 정의 된 autowire가 콩을

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

I 그것과 같이, 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 injection을 사용하지 않고 다른 enum 값을 주입 할 수있는 방법이 있습니까? 미리 감사드립니다.

답변

관련 문제