Making JUnit friendlier to AgileDox

http://d.hatena.ne.jp/masanobuimai/20040205#p1さんより。
メソッド名日本語は文字コードの問題が付きまといそうだからやだなぁ、とおもったりしますが。。。まぁ変換は一方通行(java->class)のみだから大丈夫かも。で、一度ためしてみた。問題はないなぁ。じゃぁいいかw。
つーかここではgetName()を加工してますが、なんのことはなくテスト実行時、インスタンス変数に適当な日本語を入れればよいのでは。。。。じゃ、ためしてみましょう。。だめでした・・・ 
なんでだろう。antのjunitのtaskdef使ってるので、いろいろ見てみた。
http://cvs.apache.org/viewcvs.cgi/ant/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java?rev=1.32&view=auto

currentTest.setAttribute(ATTR_NAME,
JUnitVersionHelper.getTestCaseName(test));
// a TestSuite can contain Tests from multiple classes,

ですなぁ。とおもって
http://cvs.apache.org/viewcvs.cgi/ant/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java?rev=1.12&view=autoをみると

return (String) getNameMethod.invoke(t, new Object[0]);

*1

いけへんのか。。これ。。。endTestの中にあるのに・・・。テストメソッドのinvokeあたりで問題が有るんだろうか・・・しゃーない、無理矢理コンストラク*2インスタンスメソッドに入れてみるてすと・・・。

public TestA(String s){
super(s);
if ("testCheckOK".equals(s)) {
testName="OKなのだ";
} // end of if ()
}
public String getName(){
return testName;
}

*3
成功・・・。。。そういうもんでしたっけ。。でもなんかうれしくない。いや、if文がとかじゃなくて、メソッド名を引っ張るのがいや。*4やっぱメソッド名は日本語にしておいて、getNameだけうまく変更して表示するのがよいみたい。


そうそう。ついでに。
http://junit.sourceforge.net/doc/cookstour/cookstour.htm
こんな図あったんだ。読んでみると色々あるなぁ。

細かいところがまだ不明点があるので、めも状態です。あとで細かくわかったら追記するかもしれません。

*1:getNameMethodにはgetNameのメソッドオブジェクトがあります。tはTestインターフェース。

*2:setUpでもいいのかな?

*3:一部のみ抜粋ですがいいっしょ。

*4:ここまでくるとわがままです