※Gradle1.6はまだリリースされてません。
MavenとJUnitのCategoryなエントリを書きつつ「Gradle対応してないんだよなー。自分でアノテーション漁るの書くかなー」とか思ったんですが……
GradleがCategoryに対応すると聞いて
gradleさんも1.6からCategory対応らしいけどどうなるんだろう…
test { useJUnit { includeCategories 'org.gradle.junit.CategoryA' excludeCategories 'org.gradle.junit.CategoryB' } }
とてもシンプルでいいですね!
動くコード
Gradleはnightly buildとかを使ってください。今回は gradle-1.6-20130410220032 を使用しました。
include に Integer 、 exclude に String を突っ込んだので……
- IntegerCategoryTest -> 対象
- NoneCategoryTest -> include になってないので対象外
- StringAndIntegerCategoryTest -> include だけど exclude でもあるので対象外
- StringCategoryTest -> include になってないので対象外
ってことで IntegerCategoryTest だけ動きます。include を指定しない場合は NoneCategoryTest も動いてくれます。
Gradleからマーカークラスが見えるなら クラス名.name で完全修飾名が取れたりするからさらに楽。
時代はGradleですかねー!(正直なとこ、Category程度では影響無いと思いますが)