Spring WebFlow 컨텍스트 내에서 단위 테스트 결정 상태를 얻는 가장 좋은 방법을 찾으려고합니다.Spring WebFlow에서 의사 결정 상태를 테스트하는 방법
<var name="registration" class="*some class path*.Registration"/>
<decision-state id="checkSignedIn">
<if test="*someClass*.isSignedOn(registration)"
then="checkHas*Said*Service"
else="registrationChoice"/>
</decision-state>
<decision-state id="checkHasTCloudService">
<if test="*someClass*Dao.isUserRegisteredFor*saidSvc*(registration)"
then="*svc*Activated"
else="registrationChoice"/>
</decision-state>
<view-state id="registrationChoice" model="registration" view="view.xhtml" >
<on-entry>...
N.B. someClass 및 someClassDao은 FlowScope 또는 ConversationScope 내에 없습니다.
Mockito를 통해 의사 결정 상태 표현식이 호출되고 올바른 상태 결과를 확인하려고하는지 테스트하고 싶습니다.
일반적으로, 한 수 단순히
- setCurrentState (someViewState : 당신이 천이 류 내에서 슬롯 테스트하려는 경우)
- 정의 입력을
- 모의 ExternalContext 그 맥락에서
- 로 SetEvent
- resumeFlow (주어진 컨텍스트에서)
- 모의 메서드 호출을 확인하십시오 & fina 에서야
- assertCurrentState (someViewState : 당신은 후 주어진 입력이 흐름 내에서 결정 상태가 포크 영향을 미쳤다에서 것으로 기대 경우)
의사 결정 상태가로 작동하지 않는 것 같다 뷰 상태 (충분히 공정한 : 흐름 내에서 주어진 뷰 상태가 아닙니다) 그래서 우리는 어떻게 조롱하거나 테스트합니까?
답장을 보내 주셔서 감사합니다. 이제 (
1. 모의 당신의 DAO가
2. 귀하의 흐름 &을 시작 호출