Files
@ 34846d33498d
Branch filter:
Location: kallithea/conftest.py - annotation
34846d33498d
1.2 KiB
text/x-python
mails: make error reporting by mail work with secure mail servers
Even with Kallithea mails working, TurboGears / backlash error reporting would
fail like:
Error while reporting exception with <backlash.tracing.reporters.mail.EmailReporter object at 0x7f8f986f8710>
Traceback (most recent call last):
File ".../env/lib/python3.7/site-packages/backlash/tracing/reporters/mail.py", line 49, in report
result = server.sendmail(self.from_address, self.error_email, msg.as_string())
File "/usr/lib64/python3.7/smtplib.py", line 867, in sendmail
raise SMTPSenderRefused(code, resp, from_addr)
smtplib.SMTPSenderRefused: (530, b'5.7.0 Must issue a STARTTLS command first.', 'kallithea@example.com')
Extend the .ini template to forward all the mail settings described on
https://turbogears.readthedocs.io/en/latest/reference/config-options.html#error-reporting
Even with Kallithea mails working, TurboGears / backlash error reporting would
fail like:
Error while reporting exception with <backlash.tracing.reporters.mail.EmailReporter object at 0x7f8f986f8710>
Traceback (most recent call last):
File ".../env/lib/python3.7/site-packages/backlash/tracing/reporters/mail.py", line 49, in report
result = server.sendmail(self.from_address, self.error_email, msg.as_string())
File "/usr/lib64/python3.7/smtplib.py", line 867, in sendmail
raise SMTPSenderRefused(code, resp, from_addr)
smtplib.SMTPSenderRefused: (530, b'5.7.0 Must issue a STARTTLS command first.', 'kallithea@example.com')
Extend the .ini template to forward all the mail settings described on
https://turbogears.readthedocs.io/en/latest/reference/config-options.html#error-reporting
0a277465fddf 0a277465fddf afa5e0bdb76f afa5e0bdb76f 0a277465fddf afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f afa5e0bdb76f 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 3929ff3f21c6 | import os
import mock
import pytest
here = os.path.dirname(__file__)
def pytest_ignore_collect(path):
# ignore all files outside the 'kallithea' directory
if not str(path).startswith(os.path.join(here, 'kallithea')):
return True
# during doctest verification, normally all python files will be imported.
# Thus, files that cannot be imported normally should be ignored.
# Files that generate ImportErrors are ignored via
# '--doctest-ignore-import-errors' (pytest.ini)
kallithea_ignore_paths = (
# AttributeError: 'module' object has no attribute 'config'
'/kallithea/alembic/env.py',
# collection of the following file messes up the rest of test execution
'/kallithea/tests/scripts/manual_test_concurrency.py',
)
if str(path).endswith(kallithea_ignore_paths):
return True
@pytest.fixture()
def doctest_mock_ugettext(request):
"""Mock ugettext ('_') in the module using this fixture.
Intended to be used for doctests.
In a doctest, enable this fixture using:
>>> getfixture('doctest_mock_ugettext')
"""
m = __import__(request.module.__name__, globals(), locals(), [None], 0)
with mock.patch.object(m, '_', lambda s: s):
yield
|