When a test with pytest.raises(ValueError, match='foo') doesn't raise, the
following error is printed:
Failed: DID NOT RAISE <class 'ValueError'> matching 'foo'
This error message is confusing as it implies a ValueError was raised, but the
message wasn't matching 'foo'.
I first considered rewording it somehow to preserve the match pattern in it, but
I don't think that's worthwhile as the pattern should usually be apparent from
the stacktrace anyways (hard-coded, as parametrization, or with --showlocals for
more sophisticated cases).