2010-05-31 6 views
7

Sto provando a scrivere unit test per un flusso, che ha subflow, che, a sua volta, ha un altro subflow.Unit subflows nested testing (subflows of subflows)

Registrazione il primo flusso utilizzando FlowDefinitionResource getResource(FlowDefinitionResourceFactory resourceFactory).

Quindi registrare le definizioni di sottoflusso durante l'esecuzione del test in FlowDefinitionRegistry prima di passare a esse.

Il passaggio al subflow "primo livello" va bene. Il risultato della transizione al flusso secondario del flusso secondario corrente - NoSuchFlowDefinitionException.

Il problema è che le definizioni di sottoflusso sembrano tutte collegate al flusso primario del test e il sottoflusso non può essere trovato in un altro flusso secondario.

Esiste un modo per collegare la definizione di sottoflusso a un altro flusso secondario nei test, che estendono AbstractXmlFlowExecutionTests?

+0

Qualcuno sa come fare questo? Mi piacerebbe molto scoprire come sto avendo lo stesso problema. –

risposta

1

Penso che sia possibile, ma un po 'contorto per avere ragione.

Dai un'occhiata a questa discussione: Testing a flow with subflow doesn't work. La risposta alla linea di fondo sembra essere: scavalcare il metodo virtuale configureFlowBuilderContext (MockFlowBuilderContext builderContext) e registrare la tua simulazione lì dentro.

Questo JIRA case for the Spring framework tocca questo problema e suggerisce anche che è possibile ma contorto.