| # -*- coding: utf-8 -*- | |
| import pytest | |
| from markupsafe import escape | |
| class CustomHtmlThatRaises(object): | |
| def __html__(self): | |
| raise ValueError(123) | |
| def test_exception_custom_html(): | |
| """Checks whether exceptions in custom __html__ implementations are | |
| propagated correctly. | |
| There was a bug in the native implementation at some point: | |
| https://github.com/pallets/markupsafe/issues/108 | |
| """ | |
| obj = CustomHtmlThatRaises() | |
| with pytest.raises(ValueError): | |
| escape(obj) |