JUnit5 を使う
Menu Menu
getopts を FileWrite に付ける
という option を受け付ける getops を class FileWrite に作成する。-b buffered write -u unbuffered write --size 1024 write file size --help, -h show this
この時に getops を static で作ると JavaをCのようにしかプログラミングできない「staticおじさん」と呼ばれてしまうので、ちゃんと static でない instance method とする。
これらを格納する field (と、そのgetter) を用意する。FileWrite fw = new FileWrite();
FileWrite.getopts のテストを生成する
FileWrite の class から control click で、
を選択。getopts の test を作成する。(JUnit4 を使う)Go to -> Test
で JUnit4 のtestが通ることを確認する。-b --size 1244 -u --size 1244
などと記述する。@Test や @Before に相当する部分は自分で作る。String[] args = {"-b","--size","1234"}; fw.getopts(args); assertEquals(fw.getWriteSize(),1234); assertEquals(fw.isBuffered(),true);
JUnit4 が見つからないと言われたら
File->Project Structure から Libraries を選択する。+ボタンを押して、From Maven を選択する。
Download Library From Maven Repository から junit:junit を検索する。
apache のjunit4 を選択する。
apply/OK する。
gradle 側から test する
で、JUnit5 の test が通ることを確認する。gradle test
失敗するテストを挿入し、正しくテストの失敗を確認できるかどうかを調べる。
最後に mercurial に commit して push する
(gradle のversionが最新なことを確認すること)
repository に関して
repository はWebのURLでも良いが、version 番号が含めない。hostnameは省略しないで、完全なURLにする。repository が記述されてないレポートは受理しない。.hg/hgrc の中に書いてあるはず。 ssh://yomitan.ie.u-ryukyu.ac.jp//home/hg/y12/e125749/os/7.6 http://www.ie.u-ryukyu.ac.jp/hg/y12/index.cgi/home/hg/y12/e125749/os/7.6/
build.gradle を hg add する。
.class などの余計なものを hg add しない。