/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/test-suite/python/li_constraints_runme.py
54 строки
2 KB
William S Fulton
C++ reference errors when passing in a 'NULL' change of behaviour.
14 сен 2024, 15:03
14 сен 2024, 15:03
9bf4842
Код
Авторство
О чём код?
import li_constraints def check_double(et, fn, f, val): actual = True proper = False try: fn(val) except ValueError as e: actual = False proper = "Expected a " + f + " value." == "%s"%(e) if actual: if not et: raise Exception("function '%s' with %d should perform an exception"%(f, val)) else: if et: raise Exception("function '%s' with %d should not perform an exception"%(f, val)) elif not proper: raise Exception("function '%s' with %d should perform a proper exception"%(f, val)) pass nonnegative = lambda v : li_constraints.test_nonnegative(v) check_double(True, nonnegative, "non-negative", 10) check_double(True, nonnegative, "non-negative", 0) check_double(False, nonnegative, "non-negative", -10) nonpositive = lambda v : li_constraints.test_nonpositive(v) check_double(False, nonpositive, "non-positive", 10) check_double(True, nonpositive, "non-positive", 0) check_double(True, nonpositive, "non-positive", -10) positive = lambda v : li_constraints.test_positive(v) check_double(True, positive, "positive", 10) check_double(False, positive, "positive", 0) check_double(False, positive, "positive", -10) negative = lambda v : li_constraints.test_negative(v) check_double(False, negative, "negative", 10) check_double(False, negative, "negative", 0) check_double(True, negative, "negative", -10) nonzero = lambda v : li_constraints.test_nonzero(v) check_double(True, nonzero, "nonzero", 10) check_double(False, nonzero, "nonzero", 0) check_double(True, nonzero, "nonzero", -10) have_exception = False try: li_constraints.test_nonnull(None) except TypeError as e: have_exception = "Received a NULL pointer." == "%s"%(e) if not have_exception: raise Exception("test_nonnull should perform exception with 'null' value") nonnull = li_constraints.get_nonnull() li_constraints.test_nonnull(nonnull)