Skip to content

Commit

Permalink
abuse tests, formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
diox committed Jan 28, 2025
1 parent 8a17feb commit de161aa
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 13 deletions.
38 changes: 37 additions & 1 deletion src/olympia/abuse/tests/test_models.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import json
import uuid
from datetime import datetime
from datetime import datetime, timedelta
from unittest import mock

from django.conf import settings
Expand Down Expand Up @@ -2835,6 +2835,42 @@ def test_execute_action_reject_version_delayed_rejection(self):
assert 'some review text' in mail.outbox[0].body
assert '14 day(s)' in mail.outbox[0].body

def test_execute_action_change_pending_rejection_date(self):
addon = addon_factory(users=[user_factory(email='[email protected]')])
old_pending_rejection = self.days_ago(1)
new_pending_rejection = datetime.now() + timedelta(days=1)
version_review_flags_factory(
version=addon.current_version,
pending_rejection=old_pending_rejection,
pending_rejection_by=user_factory(),
pending_content_rejection=False,
)
decision = ContentDecision.objects.create(
addon=addon,
action=DECISION_ACTIONS.AMO_CHANGE_PENDING_REJECTION_DATE,
action_date=datetime.now(),
)
ActivityLog.objects.create(
amo.LOG.CHANGE_PENDING_REJECTION,
addon,
addon.current_version,
decision,
details={
'old_deadline': str(old_pending_rejection),
'new_deadline': str(new_pending_rejection),
},
user=user_factory(),
)
decision.execute_action_and_notify()
assert (
'previous correspondence indicated that you would be required '
f'to correct the violation(s) by {old_pending_rejection}'
) in mail.outbox[0].body
assert (
'now require you to correct your add-on violations no later '
f'than {new_pending_rejection}'
) in mail.outbox[0].body

def test_resolve_job_forwarded(self):
addon_developer = user_factory()
addon = addon_factory(users=[addon_developer])
Expand Down
8 changes: 2 additions & 6 deletions src/olympia/reviewers/tests/test_forms.py
Original file line number Diff line number Diff line change
Expand Up @@ -1092,9 +1092,7 @@ def test_delayable_action_missing_fields(self):
}
form = self.get_form(data=data)
assert not form.is_valid()
assert form.errors['delayed_rejection'] == [
'This field is required.'
]
assert form.errors['delayed_rejection'] == ['This field is required.']

# 'False' or '' works, we just want to ensure the field was submitted.
form = self.get_form(data=data)
Expand All @@ -1109,9 +1107,7 @@ def test_delayable_action_missing_fields(self):
data['delayed_rejection_date'] = ''
form = self.get_form(data=data)
assert not form.is_valid()
assert form.errors['delayed_rejection_date'] == [
'This field is required.'
]
assert form.errors['delayed_rejection_date'] == ['This field is required.']

def test_version_pk(self):
self.grant_permission(self.request.user, 'Addons:Review')
Expand Down
22 changes: 16 additions & 6 deletions src/olympia/reviewers/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -4613,8 +4613,7 @@ def test_reject_multiple_versions_with_delay(self):
self.grant_permission(self.reviewer, 'Addons:Review,Reviews:Admin')

in_the_future = datetime.now() + timedelta(
days=REVIEWER_DELAYED_REJECTION_PERIOD_DAYS_DEFAULT,
hours=1
days=REVIEWER_DELAYED_REJECTION_PERIOD_DAYS_DEFAULT, hours=1
)

response = self.client.post(
Expand Down Expand Up @@ -5252,12 +5251,23 @@ def test_test_data_value_attributes_admin(self):

assert doc('.data-toggle.review-actions-reasons')[0].attrib['data-value'].split(
' '
) == ['reject_multiple_versions', 'reply', 'disable_addon',]
) == [
'reject_multiple_versions',
'reply',
'disable_addon',
]

assert doc('.data-toggle.review-files')[0].attrib['data-value'] == 'disable_addon'
assert doc('.data-toggle.review-tested')[0].attrib['data-value'] == 'disable_addon'
assert (
doc('.data-toggle.review-files')[0].attrib['data-value'] == 'disable_addon'
)
assert (
doc('.data-toggle.review-tested')[0].attrib['data-value'] == 'disable_addon'
)
# Admins can use delayed rejections
assert doc('.data-toggle.review-delayed-rejection')[0].attrib['data-value'] == 'reject_multiple_versions change_pending_rejection_multiple_versions'
assert (
doc('.data-toggle.review-delayed-rejection')[0].attrib['data-value']
== 'reject_multiple_versions change_pending_rejection_multiple_versions'
)

def test_data_value_attributes_unlisted(self):
self.version.update(channel=amo.CHANNEL_UNLISTED)
Expand Down

0 comments on commit de161aa

Please sign in to comment.