2010-05-31 10 views
7

Ich versuche Einheitentest für einen Flow zu schreiben, der über subflow verfügt, der selbst über einen weiteren untergeordneten Nachrichtenfluss verfügt.Komponententest geschachtelte untergeordnete Nachrichtenflüsse (untergeordnete Nachrichtenflüsse von untergeordneten Nachrichtenflüssen)

Ich registriere ersten Fluss unter Verwendung FlowDefinitionResource getResource(FlowDefinitionResourceFactory resourceFactory).

Dann registriere ich Subflow-Definitionen während der Testausführung in FlowDefinitionRegistry vor dem Übergang zu ihnen.

Übergang in den "ersten Level" -Unterfluss geht in Ordnung. Das Ergebnis des Übergangs in den Unterfluss des aktuellen untergeordneten Nachrichtenflusses - NoSuchFlowDefinitionException.

Das Problem besteht darin, dass untergeordnete Ablaufdefinitionen alle an den primären Ablauf des Tests gebunden sind und der untergeordnete Ablauf nicht innerhalb eines anderen untergeordneten Ablaufs gefunden werden kann.

Gibt es eine Möglichkeit, Subflow-Definition zu einem anderen untergeordneten Flow in Tests, die AbstractXmlFlowExecutionTests erweitern?

+0

Weiß jemand, wie dies zu tun? Ich würde sehr gerne herausfinden, wie ich das gleiche Problem habe. –

Antwort

1

Ich denke, das ist möglich, aber ein wenig verschlungen, um richtig zu kommen.

Schauen Sie sich diesen Thread an: Testing a flow with subflow doesn't work. Die unterste Antwort lautet wie folgt: Überschreiben Sie die virtuelle Methode configureFlowBuilderContext (MockFlowBuilderContext builderContext), und registrieren Sie Ihren Mock dort.

Diese JIRA case for the Spring framework berührt dieses Problem und schlägt auch vor, es ist möglich, aber verschachtelt.

Verwandte Themen