CsvSource: числа
Вы вернулись к методу lastDigit() из главы 1 и на этот раз предусмотрели обработку отрицательных значений с помощью Math.abs(). Теперь, зная, как сократить количество тестов с помощью @ParameterizedTest, вы решили проверить все возможные результаты lastDigit() за один раз.
Убедитесь, что метод возвращает правильную последнюю цифру для положительных, отрицательных чисел и чисел, оканчивающихся на ноль.
Это упражнение является частью курса
Введение в тестирование на Java
Инструкции к упражнению
- Используйте аннотацию для передачи нескольких значений в тестовый метод.
- Добавьте аргументы метода для тестового метода.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
public class LastDigitWithTests {
public static void main(String[] args) {
launchTestsAndPrint(LastDigitTest.class);
}
}
class LastDigit {
public static int lastDigit(int a) {
return Math.abs(a) % 10;
}
}
class LastDigitTest {
@ParameterizedTest
// Use the correct annotation for a pair of integer inputs
@____(value = {"2025, 5", "-2025, 5", "2020, 0"})
// Write the corresponding argument types for the test method
void testLastDigit(____ number, ____ expected) {
int actual = LastDigit.lastDigit(number);
assertEquals(expected, actual);
}
}