Skip to content

Commit 06bb17e

Browse files
diewdurbin
andauthored
Fully support PEP 427 and PEP 625 (#18924)
* Fully support PEP 427 * Fully support PEP 625 * Remove _ZIP_PKG* fixtures * Remove more unused fixtures --------- Co-authored-by: Ee Durbin <[email protected]>
1 parent 5f7e35c commit 06bb17e

File tree

16 files changed

+93
-696
lines changed

16 files changed

+93
-696
lines changed

tests/unit/email/test_init.py

Lines changed: 0 additions & 194 deletions
Original file line numberDiff line numberDiff line change
@@ -5802,112 +5802,6 @@ def test_api_token_warning_with_trusted_publisher_emails(
58025802
),
58035803
]
58045804

5805-
@pytest.mark.parametrize(
5806-
("fn", "template_name", "extra_kwargs"),
5807-
[
5808-
(email.send_pep625_extension_email, "pep625-extension-email", {}),
5809-
(
5810-
email.send_pep625_name_email,
5811-
"pep625-name-email",
5812-
{"normalized_name": "something_else"},
5813-
),
5814-
(
5815-
email.send_pep625_version_email,
5816-
"pep625-version-email",
5817-
{"normalized_version": "1.0.0.post1"},
5818-
),
5819-
],
5820-
)
5821-
def test_pep625_emails(
5822-
self,
5823-
pyramid_request,
5824-
pyramid_config,
5825-
monkeypatch,
5826-
fn,
5827-
template_name,
5828-
extra_kwargs,
5829-
):
5830-
stub_user = pretend.stub(
5831-
id="id",
5832-
username="username",
5833-
name="",
5834-
5835-
primary_email=pretend.stub(email="[email protected]", verified=True),
5836-
)
5837-
subject_renderer = pyramid_config.testing_add_renderer(
5838-
f"email/{template_name}/subject.txt"
5839-
)
5840-
subject_renderer.string_response = "Email Subject"
5841-
body_renderer = pyramid_config.testing_add_renderer(
5842-
f"email/{template_name}/body.txt"
5843-
)
5844-
body_renderer.string_response = "Email Body"
5845-
html_renderer = pyramid_config.testing_add_renderer(
5846-
f"email/{template_name}/body.html"
5847-
)
5848-
html_renderer.string_response = "Email HTML Body"
5849-
5850-
send_email = pretend.stub(
5851-
delay=pretend.call_recorder(lambda *args, **kwargs: None)
5852-
)
5853-
pyramid_request.task = pretend.call_recorder(lambda *args, **kwargs: send_email)
5854-
monkeypatch.setattr(email, "send_email", send_email)
5855-
5856-
pyramid_request.db = pretend.stub(
5857-
query=lambda a: pretend.stub(
5858-
filter=lambda *a: pretend.stub(
5859-
one=lambda: pretend.stub(user_id=stub_user.id)
5860-
)
5861-
),
5862-
)
5863-
pyramid_request.user = stub_user
5864-
pyramid_request.registry.settings = {"mail.sender": "[email protected]"}
5865-
5866-
project_name = "test_project"
5867-
filename = "test-project-1.0-post1.zip"
5868-
5869-
result = fn(
5870-
pyramid_request,
5871-
stub_user,
5872-
project_name=project_name,
5873-
filename=filename,
5874-
**extra_kwargs,
5875-
)
5876-
5877-
assert result == {
5878-
"project_name": project_name,
5879-
"filename": filename,
5880-
**extra_kwargs,
5881-
}
5882-
subject_renderer.assert_(project_name=project_name)
5883-
body_renderer.assert_(project_name=project_name)
5884-
html_renderer.assert_(project_name=project_name)
5885-
assert pyramid_request.task.calls == [pretend.call(send_email)]
5886-
assert send_email.delay.calls == [
5887-
pretend.call(
5888-
f"{stub_user.username} <{stub_user.email}>",
5889-
{
5890-
"sender": None,
5891-
"subject": "Email Subject",
5892-
"body_text": "Email Body",
5893-
"body_html": (
5894-
"<html>\n<head></head>\n"
5895-
"<body><p>Email HTML Body</p></body>\n</html>\n"
5896-
),
5897-
},
5898-
{
5899-
"tag": "account:email:sent",
5900-
"user_id": stub_user.id,
5901-
"additional": {
5902-
"from_": "[email protected]",
5903-
"to": stub_user.email,
5904-
"subject": "Email Subject",
5905-
"redact_ip": False,
5906-
},
5907-
},
5908-
)
5909-
]
5910-
59115805
def test_environment_ignored_in_trusted_publisher_emails(
59125806
self, pyramid_request, pyramid_config, monkeypatch
59135807
):
@@ -6004,94 +5898,6 @@ def test_environment_ignored_in_trusted_publisher_emails(
60045898
),
60055899
]
60065900

6007-
def test_pep427_emails(
6008-
self,
6009-
pyramid_request,
6010-
pyramid_config,
6011-
monkeypatch,
6012-
):
6013-
stub_user = pretend.stub(
6014-
id="id",
6015-
username="username",
6016-
name="",
6017-
6018-
primary_email=pretend.stub(email="[email protected]", verified=True),
6019-
)
6020-
subject_renderer = pyramid_config.testing_add_renderer(
6021-
"email/pep427-name-email/subject.txt"
6022-
)
6023-
subject_renderer.string_response = "Email Subject"
6024-
body_renderer = pyramid_config.testing_add_renderer(
6025-
"email/pep427-name-email/body.txt"
6026-
)
6027-
body_renderer.string_response = "Email Body"
6028-
html_renderer = pyramid_config.testing_add_renderer(
6029-
"email/pep427-name-email/body.html"
6030-
)
6031-
html_renderer.string_response = "Email HTML Body"
6032-
6033-
send_email = pretend.stub(
6034-
delay=pretend.call_recorder(lambda *args, **kwargs: None)
6035-
)
6036-
pyramid_request.task = pretend.call_recorder(lambda *args, **kwargs: send_email)
6037-
monkeypatch.setattr(email, "send_email", send_email)
6038-
6039-
pyramid_request.db = pretend.stub(
6040-
query=lambda a: pretend.stub(
6041-
filter=lambda *a: pretend.stub(
6042-
one=lambda: pretend.stub(user_id=stub_user.id)
6043-
)
6044-
),
6045-
)
6046-
pyramid_request.user = stub_user
6047-
pyramid_request.registry.settings = {"mail.sender": "[email protected]"}
6048-
6049-
project_name = "Test_Project"
6050-
filename = "Test_Project-1.0-py3-none-any.whl"
6051-
6052-
result = email.send_pep427_name_email(
6053-
pyramid_request,
6054-
stub_user,
6055-
project_name=project_name,
6056-
filename=filename,
6057-
normalized_name="test_project",
6058-
)
6059-
6060-
assert result == {
6061-
"project_name": project_name,
6062-
"normalized_name": "test_project",
6063-
"filename": filename,
6064-
}
6065-
subject_renderer.assert_(project_name=project_name)
6066-
body_renderer.assert_(project_name=project_name)
6067-
html_renderer.assert_(project_name=project_name)
6068-
6069-
assert pyramid_request.task.calls == [pretend.call(send_email)]
6070-
assert send_email.delay.calls == [
6071-
pretend.call(
6072-
f"{stub_user.username} <{stub_user.email}>",
6073-
{
6074-
"sender": None,
6075-
"subject": "Email Subject",
6076-
"body_text": "Email Body",
6077-
"body_html": (
6078-
"<html>\n<head></head>\n"
6079-
"<body><p>Email HTML Body</p></body>\n</html>\n"
6080-
),
6081-
},
6082-
{
6083-
"tag": "account:email:sent",
6084-
"user_id": stub_user.id,
6085-
"additional": {
6086-
"from_": "[email protected]",
6087-
"to": stub_user.email,
6088-
"subject": "Email Subject",
6089-
"redact_ip": False,
6090-
},
6091-
},
6092-
)
6093-
]
6094-
60955901
def test_wheel_record_mismatch_email(
60965902
self,
60975903
pyramid_request,

0 commit comments

Comments
 (0)