2010-05-31 25 views
7

Tôi đang cố gắng viết kiểm tra đơn vị cho một luồng, có luồng phụ, mà chính nó, có một luồng con khác.Đơn vị thử nghiệm dòng con lồng nhau (dòng con của dòng phụ)

Tôi đăng ký luồng đầu tiên sử dụng FlowDefinitionResource getResource(FlowDefinitionResourceFactory resourceFactory).

Sau đó, tôi đăng ký các định nghĩa dòng phụ trong khi thực hiện kiểm tra trong FlowDefinitionRegistry trước khi chuyển đổi chúng.

Việc chuyển sang dòng phụ "cấp một" sẽ ổn. Kết quả của việc chuyển sang luồng phụ của luồng phụ hiện tại - NoSuchFlowDefinitionException.

Vấn đề là tất cả các định nghĩa dòng phụ đều được gắn với luồng chính của kiểm tra và luồng phụ không thể tìm thấy trong luồng phụ khác.

Có cách nào để đính kèm định nghĩa dòng phụ vào luồng phụ khác trong các thử nghiệm, mở rộng AbstractXmlFlowExecutionTests không?

+0

Có ai biết làm thế nào để làm điều này? Tôi rất muốn tìm hiểu khi tôi gặp vấn đề tương tự. –

Trả lời

1

Tôi nghĩ rằng điều này là có thể, nhưng một chút phức tạp để có được quyền.

Hãy xem chủ đề này: Testing a flow with subflow doesn't work. Câu trả lời cuối cùng xuất hiện là: ghi đè phương thức ảo configureFlowBuilderContext (MockFlowBuilderContext builderContext) và đăng ký mô phỏng của bạn ở đó.

Điều này JIRA case for the Spring framework khắc phục sự cố này và cũng cho thấy có thể nhưng phức tạp.

Các vấn đề liên quan