2
テストコードでMixinsを使用してテスト全体でユーティリティメソッドを共有します。私は@TestFor
と@Mixin
の書いたテストを持っています。私が見ている振る舞いは、@TestFor
注釈があるときには、私の@Mixin
コードが表示されず、実行時にMissingMethodExceptionが返されるということです。 @TestFor
を削除すると正常に動作します。以下は私がしようとしているものの単純化された例です。@TestForと@Mixinを使用したGrails 2.0ユニットテスト
@Mixin(TagLibTestUtils)
@TestFor(ErrorMessageTagLib)
class ErrorMessageTagLibTests {
@Test
void stuff() {
something()
}
}
class TagLibTestUtils {
def something() {
println ">>> HERE"
}
}
だから私の質問は、@Mixin
と@TestFor
注釈が一緒に動作しないのですか?あるいは私はここで何か間違っているのですか?
作品! TestMixinの使用を強制するために変更が加えられた理由についての洞察はありますか? –
私は知らないのでしょうか?多分、@Mixinに設定されているものとは異なる[RetentionPolicy](http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/RetentionPolicy.html)が必要でした。たぶんgroovy.langではなく 'grails.test'パッケージの一部にしたいと思ったかもしれません –
クール、ありがとう。私はあなたがそうすることができたら、明日に賞金を授与します:) –