2011-04-28 106 views
3

我在Grails中使用webflow,目前我正在为它编写测试。现在,里面我已经得到的东西抛出一个错误,所以我设置一个消息闪光灯范围重定向之前:如何在Grails webflow中测试flash.message?

... 
if (some_condition) { 
    flash.message = "my error message" 
    return error() 
} 
... 

现在,我知道,当我打算在GSP页面来显示这一点,我访问Flash的消息

<g:if test="${message}">... 

而不是通常的

<g:if test="${flash.message}">... 

所以无论如何,我写我的测试,我想知道如何测试消息的内容?通常,在控制器的正常操作中,我遵循here中所写的内容。但是,由于这是一个webflow,即使我检查controller.flash.message/controller.params.message/controller.message,我似乎也无法找到该消息。我也试着看流量范围...

关于如何看到消息的任何想法呢?谢谢一堆!

回答

6

根据您的示例,您可以在您的webflow测试中访问flash.message,如controller.request.message。我为这个相同的问题做了大量的搜索,并且很多webflow文档都谈到了将所有范围合并到“视图模型”中的问题。但是我也在某处看到它将Flash范围合并到重定向的请求范围中。这就是促使我尝试在我的测试用例中寻找controller.request的原因。

+0

这个伎俩!非常感谢! – callie16 2011-06-23 02:25:38