That's a very reasonable rule-of-thumb.  However, in this case, the existing tests need not have been exercising any code paths utilizing exclude.

```
>>> x = Symbol('x')
>>> y = Symbol('y')
>>> p = Wild("p")
>>> q = Wild("q")
>>> r = Wild("r")
>>> 
>>> e = 3/(4*x + 5)
>>> assert e.match(3/(p*x + q)) == {p: 4, q: 5}
>>> 
>>> e = 3/(4*x + 5)
>>> assert e.match(p/(q*x + r)) == {p: 3, q: 4, r: 5}
>>> 
>>> e = 2/(x + 1)
>>> assert e.match(p/(q*x + r)) == {p: 2, q: 1, r: 1}
>>> 
>>> e = 1/(x + 1)
>>> assert e.match(p/(q*x + r)) == {p: 1, q: 1, r: 1}
>>>
```
If the tests of ``exclude`` don't actually need ``exclude``, seems they aren't very good tests?