Я пишу программу на Java, которая, по сути, тестирует кучу вещей ...
Для каждого вызова мне нужно проверять NullPointerExceptions
, StackOverflow
, IndexOutOfBounds
и т. Д...
Теперь у меня есть повторяющийся шаблон в каждом из моих методов:
try {
doSomething();
} catch(NullPointerExceptions npe) {
// prints something
} catch(StackOverflow soe) {
// prints something
} catch(IndexOutOfBounds iob) {
// prints something
}
Поскольку я могу вызывать doSomething()
(с разными параметрами) несколько раз в одном методе, я могуthrow
Я бы хотел написать лямбда-тестер, в который я могу передать функцию, но я могуне могу найти способ сделать это с Java :(.
Я хотел бы сделать что-то вроде:
private void test(Method m, E expectedValue) {
try {
if(!m.run().equals(expectedValue))
System.out.println("FAILED TEST: "+m.name()+". Value was "+m.run()+", should have been "+expectedValue);
} catch() {
// see above
}
}