Improve quoting in raises match failure message
This commit is contained in:
		
							parent
							
								
									b08ae4449b
								
							
						
					
					
						commit
						caa08ebd45
					
				|  | @ -0,0 +1 @@ | |||
| Improve quoting in ``raises`` match failure message. | ||||
|  | @ -544,7 +544,7 @@ class ExceptionInfo: | |||
|         """ | ||||
|         __tracebackhide__ = True | ||||
|         if not re.search(regexp, str(self.value)): | ||||
|             assert 0, "Pattern '{!s}' not found in '{!s}'".format(regexp, self.value) | ||||
|             assert 0, "Pattern {!r} not found in {!r}".format(regexp, str(self.value)) | ||||
|         return True | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -220,13 +220,20 @@ class TestRaises: | |||
|             int("asdf") | ||||
| 
 | ||||
|         msg = "with base 16" | ||||
|         expr = r"Pattern '{}' not found in 'invalid literal for int\(\) with base 10: 'asdf''".format( | ||||
|         expr = r"Pattern '{}' not found in \"invalid literal for int\(\) with base 10: 'asdf'\"".format( | ||||
|             msg | ||||
|         ) | ||||
|         with pytest.raises(AssertionError, match=expr): | ||||
|             with pytest.raises(ValueError, match=msg): | ||||
|                 int("asdf", base=10) | ||||
| 
 | ||||
|     def test_match_failure_string_quoting(self): | ||||
|         with pytest.raises(AssertionError) as excinfo: | ||||
|             with pytest.raises(AssertionError, match="'foo"): | ||||
|                 raise AssertionError("'bar") | ||||
|         msg, = excinfo.value.args | ||||
|         assert msg == 'Pattern "\'foo" not found in "\'bar"' | ||||
| 
 | ||||
|     def test_raises_match_wrong_type(self): | ||||
|         """Raising an exception with the wrong type and match= given. | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue