Skip to content

Commit 942fe32

Browse files
committed
tests: Update tests to use DevitoWarning
1 parent dd1b8a8 commit 942fe32

2 files changed

Lines changed: 15 additions & 5 deletions

File tree

devito/finite_differences/derivative.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from collections.abc import Iterable
33
from functools import cached_property
44
from itertools import chain
5-
from warnings import warn
65

76
import sympy
87

@@ -13,6 +12,7 @@
1312
from devito.tools import (as_mapper, as_tuple, frozendict, is_integer,
1413
Pickable)
1514
from devito.types.utils import DimensionTuple
15+
from devito.warnings import warn
1616

1717
__all__ = ['Derivative']
1818

@@ -96,8 +96,8 @@ class Derivative(sympy.Derivative, Differentiable, Pickable):
9696
def __new__(cls, expr, *dims, **kwargs):
9797
# TODO: Delete this
9898
if kwargs.get('preprocessed', False):
99-
from warnings import warn
100-
warn('I removed the `preprocessed` kwarg')
99+
from warnings import warn as pywarn
100+
pywarn('I removed the `preprocessed` kwarg')
101101

102102
# Validate the input arguments `expr`, `dims` and `deriv_order`
103103
expr = cls._validate_expr(expr)

tests/test_derivatives.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
DiffDerivative)
1111
from devito.symbolics import indexify, retrieve_indexed
1212
from devito.types.dimension import StencilDimension
13+
from devito.warnings import DevitoWarning
1314

1415
_PRECISION = 9
1516

@@ -1160,17 +1161,26 @@ def test_expand_add(self):
11601161
def test_expand_nest(self):
11611162
"""
11621163
Check valid nested derivative expands (combining x derivatives)
1164+
Note that it is important to specify `fd_order` to avoid raising a warning
11631165
"""
1166+
a = self.u.dx(fd_order=2)
1167+
b = a.subs({self.u: -5*self.u.dx(fd_order=2) + 4*self.u + 3}, postprocess=False)
1168+
expanded = 4*Derivative(self.u, self.x, fd_order=2) \
1169+
- 5*Derivative(self.u, (self.x, 2), fd_order=4)
1170+
assert b.expand(add=True, nest=True) == expanded
1171+
1172+
# Check that doing the naïve thing raises a warning, but asserts equal
11641173
expanded = 4*Derivative(self.u, self.x) - 5*Derivative(self.u, (self.x, 2))
1165-
assert self.b.expand(add=True, nest=True) == expanded
1174+
with pytest.warns(DevitoWarning):
1175+
assert self.b.expand(add=True, nest=True) == expanded
11661176

11671177
def test_nested_orders(self):
11681178
"""
11691179
Check nested expansion results in correct derivative and fd order
11701180
"""
11711181
# Default fd_order
11721182
du22 = Derivative(Derivative(self.u, (self.x, 2)), (self.x, 2))
1173-
with pytest.warns(UserWarning):
1183+
with pytest.warns(DevitoWarning):
11741184
du22_expanded = du22.expand(nest=True)
11751185
du4 = Derivative(self.u, (self.x, 4))
11761186
assert du22_expanded == du4

0 commit comments

Comments
 (0)