Я портирую QuickCheck на Rust, и я написал все, кроме for_all
, поскольку я Я не уверен, какой должна быть подпись типа.
Я знаю, что в целом for_all
принимает лямбда-выражения свойства и набор лямбда-выражений генератора. Он оценит генераторы, чтобы создать случайный тестовый пример, чтобы передать свойство в качестве входных данных.
Он должен напечатать +++ OK, прошло 100 тестов.
, если свойство возвращает true, в противном случае должно быть напечатано *** Ошибка!
и распечатайте неверные значения тестового примера.