MethodSource で桁を判定
歴史が長く広く使われているプログラミング言語の多くと同様に、Java には巨大なエコシステムがあり、同じことを実現する方法がいくつもあります。
前のレッスンの LastDigit の演習を思い出してください。今回のレッスンで学んだ構文に慣れるために、これを @MethodSource を使って書き直してみましょう。
この演習はコースの一部です
Javaによるテスト入門
演習の手順
- メソッドから引数を受け取るパラメータ化テストに適切なアノテーションを使います。
- そのアノテーションで、引数プロバイダーのメソッドを指定します。
- 同じ構文を3回使って、引数のペアを作成します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
public class LastDigitWithTests {
public static void main(String[] args) {
launchTestsAndPrint(LastDigitTest.class);
}
}
class LastDigitTest {
@ParameterizedTest
// Add the annotation to use a method to provide arguments and point it to the arguments method
@____("____")
void testLastDigit(int number, int expected) {
int actual = LastDigit.lastDigit(number);
assertEquals(expected, actual);
}
private static List getArgs() {
return List.of(
// Create three argument objects for the test using the same syntax
____.of(2025, 5),
____.of(-2025, 5),
____.of(2020, 0)
);
}
}