SYMBOL INDEX (437 symbols across 47 files) FILE: emails/backend/factory.py function simple_dict2str (line 2) | def simple_dict2str(d): class ObjectFactory (line 8) | class ObjectFactory: method __init__ (line 14) | def __init__(self, cls): method __getitem__ (line 18) | def __getitem__(self, k): method invalidate (line 28) | def invalidate(self, k): FILE: emails/backend/inmemory/__init__.py class InMemoryBackend (line 7) | class InMemoryBackend(object): method __init__ (line 13) | def __init__(self, **kwargs): method sendmail (line 17) | def sendmail(self, from_addr, to_addrs, msg, **kwargs): method __enter__ (line 36) | def __enter__(self): method __exit__ (line 39) | def __exit__(self, exc_type, exc_value, traceback): FILE: emails/backend/response.py class Response (line 6) | class Response: method __init__ (line 8) | def __init__(self, exception: Exception | None = None, backend: Any = ... method set_exception (line 15) | def set_exception(self, exc: Exception | None) -> None: method raise_if_needed (line 18) | def raise_if_needed(self) -> None: method error (line 23) | def error(self) -> Exception | None: method success (line 27) | def success(self) -> bool: class SMTPResponse (line 31) | class SMTPResponse(Response): method __init__ (line 33) | def __init__(self, exception: Exception | None = None, backend: Any = ... method set_status (line 47) | def set_status(self, command: str, code: int, text: bytes, **kwargs: A... method success (line 54) | def success(self) -> bool: method __repr__ (line 57) | def __repr__(self) -> str: FILE: emails/backend/smtp/aio_backend.py class AsyncSMTPBackend (line 20) | class AsyncSMTPBackend: method __init__ (line 30) | def __init__(self, ssl: bool = False, fail_silently: bool = True, method get_client (line 54) | async def get_client(self) -> AsyncSMTPClientWithResponse: method _get_client_unlocked (line 58) | async def _get_client_unlocked(self) -> AsyncSMTPClientWithResponse: method close (line 67) | async def close(self) -> None: method _close_unlocked (line 72) | async def _close_unlocked(self) -> None: method make_response (line 83) | def make_response(self, exception: Exception | None = None) -> SMTPRes... method _send (line 86) | async def _send(self, **kwargs: Any) -> SMTPResponse | None: method _send_with_retry (line 114) | async def _send_with_retry(self, **kwargs: Any) -> SMTPResponse | None: method sendmail (line 123) | async def sendmail(self, from_addr: str, to_addrs: str | list[str], method __aenter__ (line 146) | async def __aenter__(self) -> AsyncSMTPBackend: method __aexit__ (line 149) | async def __aexit__(self, exc_type: type[BaseException] | None, FILE: emails/backend/smtp/aio_client.py class AsyncSMTPClientWithResponse (line 19) | class AsyncSMTPClientWithResponse: method __init__ (line 22) | def __init__(self, parent: AsyncSMTPBackend, **kwargs): method initialize (line 50) | async def initialize(self): method quit (line 75) | async def quit(self): method _rset (line 82) | async def _rset(self): method sendmail (line 88) | async def sendmail( FILE: emails/backend/smtp/backend.py class SMTPBackend (line 21) | class SMTPBackend: method __init__ (line 33) | def __init__(self, ssl: bool = False, fail_silently: bool = True, method get_client (line 58) | def get_client(self) -> SMTPClientWithResponse: method close (line 63) | def close(self) -> None: method make_response (line 79) | def make_response(self, exception: Exception | None = None) -> SMTPRes... method retry_on_disconnect (line 82) | def retry_on_disconnect(self, func: Callable[..., SMTPResponse | None]... method _send (line 94) | def _send(self, **kwargs: Any) -> SMTPResponse | None: method sendmail (line 113) | def sendmail(self, from_addr: str, to_addrs: str | list[str], method __enter__ (line 136) | def __enter__(self) -> SMTPBackend: method __exit__ (line 139) | def __exit__(self, exc_type: type[BaseException] | None, FILE: emails/backend/smtp/client.py class SMTPClientWithResponse (line 14) | class SMTPClientWithResponse(SMTP): method __init__ (line 16) | def __init__(self, parent, **kwargs): method initialize (line 37) | def initialize(self): method quit (line 47) | def quit(self): method _rset (line 54) | def _rset(self): method sendmail (line 60) | def sendmail(self, from_addr: str, to_addrs: list[str] | str, class SMTPClientWithResponse_SSL (line 131) | class SMTPClientWithResponse_SSL(SMTP_SSL, SMTPClientWithResponse): method __init__ (line 133) | def __init__(self, **kw): method _rset (line 141) | def _rset(self): method quit (line 147) | def quit(self): method sendmail (line 157) | def sendmail(self, *args, **kw): method __init__ (line 163) | def __init__(self, *args, **kwargs): class SMTPClientWithResponse_SSL (line 162) | class SMTPClientWithResponse_SSL: method __init__ (line 133) | def __init__(self, **kw): method _rset (line 141) | def _rset(self): method quit (line 147) | def quit(self): method sendmail (line 157) | def sendmail(self, *args, **kw): method __init__ (line 163) | def __init__(self, *args, **kwargs): FILE: emails/backend/smtp/exceptions.py class SMTPConnectNetworkError (line 4) | class SMTPConnectNetworkError(IOError): method from_ioerror (line 8) | def from_ioerror(cls, exc): FILE: emails/django/__init__.py class DjangoMessageMixin (line 8) | class DjangoMessageMixin(object): method encoding (line 14) | def encoding(self): method recipients (line 17) | def recipients(self): method from_email (line 24) | def from_email(self): method _set_emails (line 27) | def _set_emails(self, mail_to=None, set_mail_to=True, mail_from=None, method send (line 47) | def send(self, mail_to=None, set_mail_to=True, mail_from=None, set_mai... class DjangoMessage (line 60) | class DjangoMessage(DjangoMessageMixin, MessageTransformerMixin, Message... FILE: emails/exc.py class HTTPLoaderError (line 6) | class HTTPLoaderError(Exception): class BadHeaderError (line 10) | class BadHeaderError(ValueError): class IncompleteMessage (line 14) | class IncompleteMessage(ValueError): FILE: emails/loader/__init__.py class LoadError (line 11) | class LoadError(Exception): class IndexFileNotFound (line 15) | class IndexFileNotFound(LoadError): class InvalidHtmlFile (line 19) | class InvalidHtmlFile(LoadError): function from_html (line 23) | def from_html(html, text=None, base_url=None, message_params=None, local... function from_url (line 68) | def from_url(url, requests_params=None, **kwargs): function _from_filebased_source (line 92) | def _from_filebased_source(store, skip_html=False, html_filename=None, s... function from_directory (line 132) | def from_directory(directory, loader_cls=None, **kwargs): function from_file (line 146) | def from_file(filename, **kwargs): function from_zip (line 158) | def from_zip(zip_file, loader_cls=None, **kwargs): function from_rfc822 (line 170) | def from_rfc822(msg, loader_cls=None, message_params=None, parse_headers... FILE: emails/loader/helpers.py class ReRules (line 18) | class ReRules: method __init__ (line 24) | def __init__(self, conv=None): function guess_text_charset (line 35) | def guess_text_charset(text, is_html=False): function guess_html_charset (line 52) | def guess_html_charset(html): function guess_charset (line 56) | def guess_charset(headers, html): function decode_text (line 75) | def decode_text(text, FILE: emails/message.py class BaseMessage (line 28) | class BaseMessage: method __init__ (line 38) | def __init__(self, method set_mail_from (line 74) | def set_mail_from(self, mail_from: _Address) -> None: method get_mail_from (line 78) | def get_mail_from(self) -> tuple[str | None, str | None] | None: method set_mail_to (line 84) | def set_mail_to(self, mail_to: _AddressList) -> None: method get_mail_to (line 87) | def get_mail_to(self) -> list[tuple[str | None, str | None]]: method set_cc (line 92) | def set_cc(self, addr: _AddressList) -> None: method get_cc (line 95) | def get_cc(self) -> list[tuple[str | None, str | None]]: method set_bcc (line 100) | def set_bcc(self, addr: _AddressList) -> None: method get_bcc (line 103) | def get_bcc(self) -> list[tuple[str | None, str | None]]: method set_reply_to (line 108) | def set_reply_to(self, addr: _AddressList) -> None: method get_reply_to (line 111) | def get_reply_to(self) -> list[tuple[str | None, str | None]]: method get_recipients_emails (line 116) | def get_recipients_emails(self) -> list[str | None]: method set_headers (line 123) | def set_headers(self, headers: dict[str, str] | None) -> None: method set_html (line 126) | def set_html(self, html: str | IO[str] | None, url: str | None = None)... method get_html (line 132) | def get_html(self) -> str | None: method set_text (line 137) | def set_text(self, text: str | IO[str] | None, url: str | None = None)... method get_text (line 143) | def get_text(self) -> str | None: method html_body (line 150) | def html_body(self) -> str | None: method text_body (line 155) | def text_body(self) -> str | None: method set_subject (line 158) | def set_subject(self, value: str | None) -> None: method get_subject (line 162) | def get_subject(self) -> str | None: method render (line 167) | def render(self, **kwargs: Any) -> None: method set_date (line 170) | def set_date(self, value: str | datetime | float | bool | Callable[...... method get_date (line 173) | def get_date(self) -> str | None: method message_id (line 187) | def message_id(self) -> str | None: method message_id (line 194) | def message_id(self, value: str | MessageID | bool | None) -> None: method attachments (line 198) | def attachments(self) -> MemoryFileStore: method attach (line 203) | def attach(self, **kwargs: Any) -> None: class MessageBuildMixin (line 209) | class MessageBuildMixin: method encode_header (line 221) | def encode_header(self, value: str | None) -> str | None: method encode_address_header (line 227) | def encode_address_header(self, pair: tuple[str | None, str | None] | ... method set_header (line 235) | def set_header(self, msg: SafeMIMEMultipart, key: str, method _build_root_message (line 255) | def _build_root_message(self, message_cls: type | None = None, method _build_html_part (line 289) | def _build_html_part(self) -> SafeMIMEText | None: method _build_text_part (line 297) | def _build_text_part(self) -> SafeMIMEText | None: method build_message (line 305) | def build_message(self, message_cls: type | None = None) -> SafeMIMEMu... method as_message (line 345) | def as_message(self, message_cls: type | None = None) -> SafeMIMEMulti... method as_string (line 353) | def as_string(self, message_cls: type | None = None) -> str: method as_bytes (line 365) | def as_bytes(self, message_cls: type | None = None) -> bytes: class MessageSendMixin (line 375) | class MessageSendMixin: method smtp_pool (line 381) | def smtp_pool(self) -> ObjectFactory: method _prepare_send_params (line 384) | def _prepare_send_params(self, method send (line 425) | def send(self, method send_async (line 452) | async def send_async(self, class MessageTransformerMixin (line 493) | class MessageTransformerMixin: method create_transformer (line 498) | def create_transformer(self, transformer_cls: type | None = None, **kw... method destroy_transformer (line 506) | def destroy_transformer(self) -> None: method transformer (line 510) | def transformer(self) -> Any: method transform (line 515) | def transform(self, **kwargs: Any) -> None: method set_html (line 519) | def set_html(self, **kw: Any) -> None: class MessageSignMixin (line 525) | class MessageSignMixin: method sign (line 530) | def sign(self, **kwargs: Any) -> Message: method sign_message (line 536) | def sign_message(self, msg: SafeMIMEMultipart) -> SafeMIMEMultipart: method sign_string (line 542) | def sign_string(self, message_string: str) -> str: method sign_bytes (line 548) | def sign_bytes(self, message_bytes: bytes) -> bytes: class Message (line 555) | class Message(MessageSendMixin, MessageTransformerMixin, MessageSignMixi... function html (line 565) | def html(**kwargs: Any) -> Message: class DjangoMessageProxy (line 569) | class DjangoMessageProxy: method __init__ (line 585) | def __init__(self, message: Message, recipients: list[str] | None = None, method recipients (line 594) | def recipients(self) -> list[str | None]: method message (line 597) | def message(self) -> SafeMIMEMultipart: FILE: emails/signers.py class DKIMSigner (line 12) | class DKIMSigner: method __init__ (line 14) | def __init__(self, selector: str, domain: str, key: str | bytes | IO[b... method get_sign_string (line 42) | def get_sign_string(self, message: bytes) -> bytes | None: method get_sign_bytes (line 53) | def get_sign_bytes(self, message: bytes) -> bytes | None: method get_sign_header (line 56) | def get_sign_header(self, message: bytes) -> tuple[str, str] | None: method sign_message (line 65) | def sign_message(self, msg: MIMEMultipart) -> MIMEMultipart: method sign_message_string (line 74) | def sign_message_string(self, message_string: str) -> str: method sign_message_bytes (line 83) | def sign_message_bytes(self, message_bytes: bytes) -> bytes: FILE: emails/store/file.py function fix_content_type (line 19) | def fix_content_type(content_type: str | None, t: str = 'image') -> str: class BaseFile (line 26) | class BaseFile: method __init__ (line 34) | def __init__(self, **kwargs: Any) -> None: method as_dict (line 51) | def as_dict(self, fields: tuple[str, ...] | None = None) -> dict[str, ... method get_data (line 56) | def get_data(self) -> bytes | str | None: method set_data (line 65) | def set_data(self, value: bytes | str | IO[bytes] | None) -> None: method get_uri (line 70) | def get_uri(self) -> str | None: method set_uri (line 78) | def set_uri(self, value: str | None) -> None: method get_filename (line 83) | def get_filename(self) -> str | None: method set_filename (line 95) | def set_filename(self, value: str | None) -> None: method get_mime_type (line 100) | def get_mime_type(self) -> str: method get_content_disposition (line 130) | def get_content_disposition(self) -> str | None: method set_content_disposition (line 133) | def set_content_disposition(self, value: str | None) -> None: method is_inline (line 139) | def is_inline(self): method is_inline (line 143) | def is_inline(self, value): method content_id (line 150) | def content_id(self) -> str | None: method mime (line 156) | def mime(self) -> MIMEBase | None: method reset_mime (line 182) | def reset_mime(self) -> None: method fetch (line 185) | def fetch(self) -> None: class LazyHTTPFile (line 189) | class LazyHTTPFile(BaseFile): method __init__ (line 191) | def __init__(self, requests_args: dict[str, Any] | None = None, **kwar... method fetch (line 196) | def fetch(self) -> None: method get_data (line 213) | def get_data(self) -> bytes | str: method set_data (line 222) | def set_data(self, v: bytes | str | IO[bytes] | None) -> None: method mime_type (line 228) | def mime_type(self) -> str: method headers (line 233) | def headers(self) -> dict[str, str]: FILE: emails/store/store.py class FileStore (line 11) | class FileStore: class MemoryFileStore (line 15) | class MemoryFileStore(FileStore): method __init__ (line 19) | def __init__(self, file_cls: type[BaseFile] | None = None) -> None: method __contains__ (line 25) | def __contains__(self, k: BaseFile | str | Any) -> bool: method keys (line 33) | def keys(self) -> list[str]: method __len__ (line 36) | def __len__(self) -> int: method as_dict (line 39) | def as_dict(self) -> Generator[dict[str, Any], None, None]: method remove (line 43) | def remove(self, uri: BaseFile | str) -> None: method unique_filename (line 56) | def unique_filename(self, filename: str | None, uri: str | None = None... method add (line 73) | def add(self, value: BaseFile | dict[str, Any], replace: bool = False)... method by_uri (line 90) | def by_uri(self, uri: str) -> BaseFile | None: method by_filename (line 93) | def by_filename(self, filename: str) -> BaseFile | None: method __getitem__ (line 99) | def __getitem__(self, uri: str) -> BaseFile | None: method __iter__ (line 102) | def __iter__(self) -> Iterator[BaseFile]: FILE: emails/template/base.py class BaseTemplate (line 4) | class BaseTemplate(object): method __init__ (line 6) | def __init__(self, template_text, **kwargs): method set_template_text (line 10) | def set_template_text(self, template_text): method render (line 14) | def render(self, **kwargs): method compile_template (line 17) | def compile_template(self): method template (line 21) | def template(self): class StringTemplate (line 27) | class StringTemplate(BaseTemplate): method compile_template (line 31) | def compile_template(self): method render (line 39) | def render(self, **kwargs): FILE: emails/template/jinja_template.py class JinjaTemplate (line 4) | class JinjaTemplate(BaseTemplate): method __init__ (line 13) | def __init__(self, template_text, environment=None): method compile_template (line 28) | def compile_template(self): method render (line 31) | def render(self, **kwargs): FILE: emails/template/mako_template.py class MakoTemplate (line 4) | class MakoTemplate(BaseTemplate): method compile_template (line 6) | def compile_template(self): method render (line 11) | def render(self, **kwargs): FILE: emails/testsuite/conftest.py function django_email_backend (line 19) | def django_email_backend(request): FILE: emails/testsuite/django_/test_django_integrations.py function test_django_message_proxy (line 12) | def test_django_message_proxy(django_email_backend): function test_django_message_send (line 27) | def test_django_message_send(django_email_backend): function test_django_message_commons (line 48) | def test_django_message_commons(): function test_legacy_import (line 83) | def test_legacy_import(): FILE: emails/testsuite/loader/test_helpers.py function test_re_rules (line 7) | def test_re_rules(): function test_guess_charset (line 11) | def test_guess_charset(): function test_decode_text (line 25) | def test_decode_text(): FILE: emails/testsuite/loader/test_loaders.py function test__from_html (line 22) | def test__from_html(): function load_messages (line 32) | def load_messages(from_url=None, from_file=None, from_zip=None, from_dir... function test_loaders (line 48) | def test_loaders(): function test_noindex_loaders (line 92) | def test_noindex_loaders(): function test_loaders_with_params (line 101) | def test_loaders_with_params(): function test_loader_image_callback (line 131) | def test_loader_image_callback(): function test_external_urls (line 157) | def test_external_urls(): function _get_loaders (line 183) | def _get_loaders(): function test_local_store1 (line 189) | def test_local_store1(): function test_split_template_path (line 208) | def test_split_template_path(): function test_base_loader (line 214) | def test_base_loader(): FILE: emails/testsuite/loader/test_rfc822_loader.py function _get_message (line 10) | def _get_message(): function _compare_messages (line 22) | def _compare_messages(a, b): function test_rfc822_loader (line 31) | def test_rfc822_loader(**kw): function test_msgloader (line 38) | def test_msgloader(): function _try_decode (line 78) | def _try_decode(s, charsets=('utf-8', 'koi8-r', 'cp1251')): function _check_date (line 87) | def _check_date(s): function _format_addr (line 97) | def _format_addr(data, one=True): function test_mass_msgloader (line 106) | def test_mass_msgloader(): FILE: emails/testsuite/message/helpers.py function common_email_data (line 11) | def common_email_data(**kw): FILE: emails/testsuite/message/test_dkim.py function dkim_keys (line 14) | def dkim_keys(): function _check_dkim (line 33) | def _check_dkim(message, pub_key): function test_dkim (line 41) | def test_dkim(dkim_keys): function test_dkim_error (line 68) | def test_dkim_error(dkim_keys): function test_dkim_as_bytes (line 110) | def test_dkim_as_bytes(dkim_keys): function test_dkim_sign_after_error (line 119) | def test_dkim_sign_after_error(dkim_keys): function test_dkim_sign_twice (line 135) | def test_dkim_sign_twice(dkim_keys): FILE: emails/testsuite/message/test_lazy_gettext.py function lazy_string (line 6) | def lazy_string(func, string, **variables): function test_lazy_translated (line 11) | def test_lazy_translated(): FILE: emails/testsuite/message/test_message.py function test_message_types (line 17) | def test_message_types(): function test_message_build (line 22) | def test_message_build(): function test_date (line 38) | def test_date(): function test_after_build (line 62) | def test_after_build(): function test_before_build (line 78) | def test_before_build(): function test_sanitize_header (line 90) | def test_sanitize_header(): function test_headers_not_double_encoded (line 100) | def test_headers_not_double_encoded(): function test_headers_ascii_encoded (line 115) | def test_headers_ascii_encoded(): function test_message_addresses (line 132) | def test_message_addresses(): function test_rfc6532_address (line 149) | def test_rfc6532_address(): function test_message_policy (line 156) | def test_message_policy(): function test_message_id (line 176) | def test_message_id(): function test_reply_to (line 196) | def test_reply_to(): function test_several_recipients (line 223) | def test_several_recipients(): function test_transform (line 245) | def test_transform(): FILE: emails/testsuite/message/test_send.py function get_letters (line 12) | def get_letters(): function test_send_letters (line 32) | def test_send_letters(): function test_send_simple (line 44) | def test_send_simple(): function test_send_with_context_manager (line 53) | def test_send_with_context_manager(): FILE: emails/testsuite/message/test_send_async.py function mock_smtp (line 14) | def mock_smtp(): function test_send_async_with_dict (line 37) | async def test_send_async_with_dict(mock_smtp): function test_send_async_with_backend_object (line 48) | async def test_send_async_with_backend_object(mock_smtp): function test_send_async_with_default_smtp (line 62) | async def test_send_async_with_default_smtp(mock_smtp): function test_sync_send_unchanged (line 70) | def test_sync_send_unchanged(): function test_send_async_with_render (line 85) | async def test_send_async_with_render(mock_smtp): function test_send_async_with_to_override (line 97) | async def test_send_async_with_to_override(mock_smtp): function test_send_async_invalid_smtp_type (line 111) | async def test_send_async_invalid_smtp_type(): function test_send_async_no_from_raises (line 119) | async def test_send_async_no_from_raises(): function test_send_async_closes_on_error (line 131) | async def test_send_async_closes_on_error(mock_smtp): FILE: emails/testsuite/message/test_send_async_e2e.py function test_send_async_simple (line 22) | async def test_send_async_simple(): function test_send_async_with_backend_object (line 33) | async def test_send_async_with_backend_object(): function test_send_async_with_context_manager (line 48) | async def test_send_async_with_context_manager(): FILE: emails/testsuite/message/test_template.py function test_templates_commons (line 6) | def test_templates_commons(): function test_render_message_with_template (line 21) | def test_render_message_with_template(): FILE: emails/testsuite/smtp/test_aio_client.py function _aio_resp (line 10) | def _aio_resp(code: int = 250, message: str = 'OK'): class FakeAsyncSMTPBackend (line 17) | class FakeAsyncSMTPBackend: method make_response (line 22) | def make_response(self, exception=None): function parent (line 27) | def parent(): function test_sendmail_success (line 32) | async def test_sendmail_success(parent): function test_sendmail_empty_to_addrs (line 60) | async def test_sendmail_empty_to_addrs(parent): function test_sendmail_recipient_refused (line 77) | async def test_sendmail_recipient_refused(parent): function test_sendmail_sender_refused (line 110) | async def test_sendmail_sender_refused(parent): function test_ssl_and_tls_flags (line 138) | async def test_ssl_and_tls_flags(parent): function test_quit_handles_disconnect (line 160) | async def test_quit_handles_disconnect(parent): function test_initialize_with_login (line 178) | async def test_initialize_with_login(parent): function test_sendmail_string_to_addrs (line 196) | async def test_sendmail_string_to_addrs(parent): FILE: emails/testsuite/smtp/test_async_smtp_backend.py function mock_msg (line 13) | def mock_msg(): function mock_smtp (line 20) | def mock_smtp(): function test_lifecycle_connect_send_close (line 43) | async def test_lifecycle_connect_send_close(mock_smtp, mock_msg): function test_get_client_reuses_connection (line 69) | async def test_get_client_reuses_connection(mock_smtp, mock_msg): function test_get_client_with_login (line 81) | async def test_get_client_with_login(mock_smtp): function test_reconnect_after_disconnect (line 90) | async def test_reconnect_after_disconnect(mock_smtp, mock_msg): function test_fail_silently_true_on_connect_error (line 120) | async def test_fail_silently_true_on_connect_error(mock_smtp, mock_msg): function test_fail_silently_false_raises (line 136) | async def test_fail_silently_false_raises(mock_smtp, mock_msg): function test_empty_to_addrs_returns_none (line 150) | async def test_empty_to_addrs_returns_none(mock_msg): function test_ssl_tls_mutually_exclusive (line 162) | async def test_ssl_tls_mutually_exclusive(): function test_context_manager (line 169) | async def test_context_manager(mock_smtp, mock_msg): function test_close_clears_client_on_error (line 179) | async def test_close_clears_client_on_error(mock_smtp): function test_string_to_addrs_converted_to_list (line 192) | async def test_string_to_addrs_converted_to_list(mock_smtp, mock_msg): function test_mail_options_passed_through (line 206) | async def test_mail_options_passed_through(mock_smtp, mock_msg): FILE: emails/testsuite/smtp/test_factory.py function test_object_factory (line 5) | def test_object_factory(): FILE: emails/testsuite/smtp/test_smtp_backend.py function test_send_to_unknown_host (line 16) | def test_send_to_unknown_host(): function test_smtp_send_with_reconnect (line 28) | def test_smtp_send_with_reconnect(): function test_smtp_init_error (line 44) | def test_smtp_init_error(): function test_smtp_empty_sendmail (line 52) | def test_smtp_empty_sendmail(): FILE: emails/testsuite/smtp/test_smtp_response.py function test_smtp_response_defaults (line 4) | def test_smtp_response_defaults(): function test_smtp_response_set_status (line 15) | def test_smtp_response_set_status(): function test_smtp_response_success (line 24) | def test_smtp_response_success(): function test_smtp_response_refused_recipients (line 32) | def test_smtp_response_refused_recipients(): function test_smtp_response_exception (line 40) | def test_smtp_response_exception(): FILE: emails/testsuite/smtp_servers.py function as_bool (line 11) | def as_bool(value, default=False): function smtp_server_from_env (line 35) | def smtp_server_from_env(name='GMAIL'): class SMTPTestParams (line 66) | class SMTPTestParams(object): method __init__ (line 70) | def __init__(self, from_email=None, to_email=None, defaults=None, **kw): method patch_message (line 78) | def patch_message(self, message): method __str__ (line 100) | def __str__(self): method sleep (line 105) | def sleep(self): function get_servers (line 113) | def get_servers(): FILE: emails/testsuite/store/test_store.py function test_fix_content_type (line 9) | def test_fix_content_type(): function test_lazy_http (line 14) | def test_lazy_http(): function test_attachment_headers (line 22) | def test_attachment_headers(): function test_store_commons (line 28) | def test_store_commons(): function test_store_unique_name (line 38) | def test_store_unique_name(): function test_get_data_str (line 51) | def test_get_data_str(): function test_get_data_bytes (line 56) | def test_get_data_bytes(): function test_get_data_filelike (line 61) | def test_get_data_filelike(): function test_get_data_none (line 66) | def test_get_data_none(): function test_mime_type_from_content (line 71) | def test_mime_type_from_content(): function test_store_commons2 (line 98) | def test_store_commons2(): FILE: emails/testsuite/test_templates.py function test_template_cache (line 6) | def test_template_cache(): function test_templates_basics (line 14) | def test_templates_basics(): function test_string_template_safe_subst (line 22) | def test_string_template_safe_subst(): FILE: emails/testsuite/test_utils.py function test_parse_name_and_email (line 9) | def test_parse_name_and_email(): function test_parse_name_and_list (line 21) | def test_parse_name_and_list(): function test_header_encode (line 28) | def test_header_encode(): function test_sanitize_address (line 34) | def test_sanitize_address(): function test_sanitize_email (line 42) | def test_sanitize_email(): function test_fetch_url (line 46) | def test_fetch_url(): function test_message_id (line 52) | def test_message_id(): function test_url_fix (line 71) | def test_url_fix(): function test_format_date (line 77) | def test_format_date(): FILE: emails/testsuite/transformer/test_parser.py function test_parser_inputs (line 4) | def test_parser_inputs(): function test_breaking_title (line 25) | def test_breaking_title(): FILE: emails/testsuite/transformer/test_transformer.py function test_image_apply (line 8) | def test_image_apply(): function test_html5_transform (line 30) | def test_html5_transform(): function test_entity_13 (line 35) | def test_entity_13(): function test_link_apply (line 39) | def test_link_apply(): function test_tag_attribute (line 55) | def test_tag_attribute(): function test_data_uri_preserved (line 69) | def test_data_uri_preserved(): function test_local_premailer (line 97) | def test_local_premailer(): function test_add_content_type_meta (line 103) | def test_add_content_type_meta(): function test_image_inline (line 111) | def test_image_inline(): function test_absolute_url (line 144) | def test_absolute_url(): function test_html_parser_with_templates (line 151) | def test_html_parser_with_templates(): function test_template_transformer (line 162) | def test_template_transformer(): FILE: emails/transformer.py class LocalPremailer (line 20) | class LocalPremailer(Premailer): method __init__ (line 22) | def __init__(self, html, local_loader=None, attribute_name=None, **kw): method _load_external (line 30) | def _load_external(self, url): class HTMLParser (line 61) | class HTMLParser(object): method __init__ (line 67) | def __init__(self, html, method=None, output_method=None): method html (line 80) | def html(self): method tree (line 84) | def tree(self): method to_string (line 99) | def to_string(self, encoding='utf-8', **kwargs): method apply_to_images (line 113) | def apply_to_images(self, func, images=True, backgrounds=True, styles_... method apply_to_links (line 150) | def apply_to_links(self, func): method add_content_type_meta (line 156) | def add_content_type_meta(self, content_type="text/html", charset="utf... method save (line 180) | def save(self, **kwargs): class BaseTransformer (line 184) | class BaseTransformer(HTMLParser): method __init__ (line 192) | def __init__(self, html, local_loader=None, method get_absolute_url (line 207) | def get_absolute_url(self, url): method attribute_value (line 224) | def attribute_value(self, el): method _default_attachment_check (line 232) | def _default_attachment_check(self, el, hints): method _load_attachment_func (line 238) | def _load_attachment_func(self, uri, element=None, callback=None, **kw): method get_premailer (line 269) | def get_premailer(self, **kw): method premailer (line 277) | def premailer(self): method remove_unsafe_tags (line 282) | def remove_unsafe_tags(self): method load_and_transform (line 290) | def load_and_transform(self, method make_all_images_inline (line 338) | def make_all_images_inline(self): method synchronize_inline_images (line 344) | def synchronize_inline_images(self, inline_names=None, non_inline_name... class Transformer (line 375) | class Transformer(BaseTransformer): class MessageTransformer (line 379) | class MessageTransformer(BaseTransformer): method __init__ (line 381) | def __init__(self, message, **kw): method save (line 392) | def save(self): FILE: emails/utils.py function formataddr (line 27) | def formataddr(pair: tuple[str | None, str]) -> str: function load_email_charsets (line 52) | def load_email_charsets() -> None: class cached_property (line 62) | class cached_property: method __init__ (line 69) | def __init__(self, func: Callable[..., Any]) -> None: method __get__ (line 73) | def __get__(self, obj: Any, cls: type | None = None) -> Any: class CachedDnsName (line 83) | class CachedDnsName: method __str__ (line 84) | def __str__(self) -> str: method get_fqdn (line 87) | def get_fqdn(self) -> str: function decode_header (line 96) | def decode_header(value: str | bytes, default: str = "utf-8", errors: st... class MessageID (line 109) | class MessageID: method __init__ (line 117) | def __init__(self, domain: str | None = None, idstring: str | int | No... method __call__ (line 126) | def __call__(self) -> str: function parse_name_and_email_list (line 137) | def parse_name_and_email_list(elements: str | tuple[str | None, str] | l... function parse_name_and_email (line 170) | def parse_name_and_email(obj: str | tuple[str | None, str] | list[str], function sanitize_email (line 188) | def sanitize_email(addr: str, encoding: str = 'ascii', parse: bool = Fal... function sanitize_address (line 204) | def sanitize_address(addr: str | tuple[str, str], encoding: str = 'ascii... class MIMEMixin (line 217) | class MIMEMixin: method as_string (line 218) | def as_string(self, unixfrom: bool = False, linesep: str = '\n') -> str: method as_bytes (line 231) | def as_bytes(self, unixfrom: bool = False, linesep: str = '\n') -> bytes: class SafeMIMEText (line 244) | class SafeMIMEText(MIMEMixin, MIMEText): # type: ignore[misc] # intent... method __init__ (line 245) | def __init__(self, text: str, subtype: str, charset: str) -> None: class SafeMIMEMultipart (line 250) | class SafeMIMEMultipart(MIMEMixin, MIMEMultipart): # type: ignore[misc]... method __init__ (line 251) | def __init__(self, _subtype: str = 'mixed', boundary: str | None = None, function fetch_url (line 263) | def fetch_url(url: str, valid_http_codes: tuple[int, ...] = (200, ), function encode_header (line 275) | def encode_header(value: str | Any, charset: str = 'utf-8') -> str | Any: function renderable (line 284) | def renderable(f: F) -> F: function format_date_header (line 298) | def format_date_header(v: datetime | float | None, localtime: bool = Tru... FILE: scripts/make_rfc822.py class MakeRFC822 (line 35) | class MakeRFC822: method __init__ (line 36) | def __init__(self, options): method _headers_from_command_line (line 39) | def _headers_from_command_line(self): method _get_message (line 54) | def _get_message(self): method _send_test_email (line 83) | def _send_test_email(self, message): method _start_batch (line 100) | def _start_batch(self): method _generate_batch (line 127) | def _generate_batch(self, batch, message): method main (line 137) | def main(self): FILE: setup.py class run_audit (line 23) | class run_audit(Command): method initialize_options (line 33) | def initialize_options(self): method finalize_options (line 36) | def finalize_options(self): method run (line 39) | def run(self): function find_version (line 60) | def find_version(*file_paths): function read_file (line 72) | def read_file(filename):