Slide 117
Slide 117 text
@deal.pre(lambda *args: all(arg > 0 for arg in args))
@deal.post(lambda result: result > 5)
def sum_positive(*args):
return sum(args)
sum_positive(1, 2, 3, 4)
# 10
sum_positive(1, 2, -3, 4)
# PreContractError:
sum_positive(1, 2)
# PostContractError:
98