numpy.testing.assert_warns#
- тестирование.assert_warns(warning_class, *args, **kwargs)[источник]#
Не пройдёт, если данный вызываемый объект не выбросит указанное предупреждение.
Предупреждение класса warning_class должно быть вызвано вызываемым объектом при вызове с аргументами args и ключевыми аргументами kwargs. Если будет вызван другой тип предупреждения, он не будет перехвачен.
Если вызывается со всеми аргументами, кроме класса предупреждения, опущенными, может использоваться как контекстный менеджер:
with assert_warns(SomeWarning): do_something()
Возможность использования в качестве контекстного менеджера является новой в NumPy v1.11.0.
Устарело с версии 2.4: Это устарело. Используйте
warnings.catch_warningsилиpytest.warnsвместо этого.- Параметры:
- warning_classкласс
Класс, определяющий предупреждение, которое функция ожидается, что выбросит исключение.
- функциявызываемый объект, необязательный
Вызываемый объект для тестирования
- *argsАргументы
Аргументы для функция.
- **kwargsKwargs
Именованные аргументы для функция.
- Возвращает:
- Значение, возвращаемое функция.
Примеры
>>> import warnings >>> def deprecated_func(num): ... warnings.warn("Please upgrade", DeprecationWarning) ... return num*num >>> with np.testing.assert_warns(DeprecationWarning): ... assert deprecated_func(4) == 16 >>> # or passing a func >>> ret = np.testing.assert_warns(DeprecationWarning, deprecated_func, 4) >>> assert ret == 16