備忘録的なメモ
タグライブラリやコントローラーのIntegration-Test書いてると、テストの中で標準(g)のタグライブラリ呼び出したくなることありませんか?あんまないか。
import org.codehaus.groovy.grails.commons.ApplicationHolder
import org.codehaus.groovy.grails.web.taglib.NamespacedTagDispatcher
class CustomTagLibSpecification extends GroovyPagesSpecification {
NamespacedTagDispatcher g = ApplicationHolder.application.mainContext.getBean('gspTagLibraryLookup').lookupNamespaceDispatcher('g')
def "仕様かきかき"() {
message = g.message(code:"message.properties.message.code")
...
}
}
上のはSpockの仕様ですけど、普通のGroovyPagesTestCase使ったテストケースでもいけるんじゃないかと。まあ、applyTemplate使ってもいいすけど。
コントローラ内だったら、なんにもしなくても message(code:"ほげほげ") でタグライブラリ呼び出せるんだけど…
もっといい方法ありましたら教えてくださいです。