def test_list_no_permission(self): user_without_abusereports_edit = user_factory() grant_permission(user_without_abusereports_edit, 'Admin:Tools', 'Admin Group') self.client.login(email=user_without_abusereports_edit.email) response = self.client.get(self.list_url) assert response.status_code == 403
def test_list_no_permission(self): user_without_abusereports_edit = user_factory() grant_permission( user_without_abusereports_edit, 'Admin:Tools', 'Admin Group') self.client.login(email=user_without_abusereports_edit.email) response = self.client.get(self.list_url) assert response.status_code == 403
def setUpTestData(cls): cls.addon1 = addon_factory(guid='@guid1', name='Neo') cls.addon2 = addon_factory(guid='@guid2', name='Two') cls.addon3 = addon_factory(guid='@guid3', name='Three') cls.user = user_factory() grant_permission(cls.user, 'Admin:Tools', 'Admin Group') grant_permission(cls.user, 'AbuseReports:Edit', 'Abuse Report Triage') # Create a few abuse reports. AbuseReport.objects.create(addon=cls.addon1, guid='@guid1', message='Foo', state=AbuseReport.STATES.VALID, created=days_ago(98)) AbuseReport.objects.create(addon=cls.addon2, guid='@guid2', message='Bar', state=AbuseReport.STATES.VALID) AbuseReport.objects.create(addon=cls.addon3, guid='@guid3', message='Soap', reason=AbuseReport.REASONS.OTHER, created=days_ago(100)) AbuseReport.objects.create(addon=cls.addon1, guid='@guid1', message='', reporter=user_factory()) # This is a report for an addon not in the database. AbuseReport.objects.create(guid='@unknown_guid', addon_name='Mysterious Addon', message='Doo') # This is one against a user. AbuseReport.objects.create( user=user_factory(username='******'), message='Ehehehehe')
def setUpTestData(cls): cls.addon1 = addon_factory(guid='@guid1') cls.addon2 = addon_factory(guid='@guid2') cls.addon3 = addon_factory(guid='@guid3') cls.user = user_factory() grant_permission(cls.user, 'Admin:Tools', 'Admin Group') grant_permission(cls.user, 'AbuseReports:Edit', 'Abuse Report Triage') # Create a few abuse reports. AbuseReport.objects.create( addon=cls.addon1, guid='@guid1', message='Foo', state=AbuseReport.STATES.VALID, created=days_ago(98)) AbuseReport.objects.create( addon=cls.addon2, guid='@guid2', message='Bar', state=AbuseReport.STATES.VALID) AbuseReport.objects.create( addon=cls.addon3, guid='@guid3', message='Soap', reason=AbuseReport.REASONS.OTHER, created=days_ago(100)) AbuseReport.objects.create( addon=cls.addon1, guid='@guid1', message='', reporter=user_factory()) # This is a report for an addon not in the database. AbuseReport.objects.create( guid='@unknown_guid', addon_name='Mysterious Addon', message='Doo') # This is one against a user. AbuseReport.objects.create( user=user_factory(), message='Eheheheh')
def generate_review_data(self): with freeze_time(self.last_week_begin): reviewer1 = user_factory(display_name='Volunteer A') reviewer2 = user_factory(display_name='Staff B') reviewer3 = user_factory(display_name='Volunteer Content C') reviewer4 = user_factory(display_name='Staff Content D') grant_permission(reviewer2, '', name='Staff') grant_permission(reviewer4, '', name='No Reviewer Incentives') data = [ (reviewer1, 178, amo.AUTO_APPROVED, False), (reviewer1, 95, amo.AUTO_APPROVED, False), (reviewer1, 123, amo.NOT_AUTO_APPROVED, False), (reviewer1, 328, amo.AUTO_APPROVED, False), (reviewer1, 450, amo.AUTO_APPROVED, False), (reviewer1, 999, amo.NOT_AUTO_APPROVED, False), (reviewer1, 131, amo.AUTO_APPROVED, False), (reviewer1, 74, amo.NOT_AUTO_APPROVED, False), (reviewer1, 15, amo.AUTO_APPROVED, False), (reviewer2, 951, amo.NOT_AUTO_APPROVED, False), (reviewer2, 8421, amo.AUTO_APPROVED, False), (reviewer2, 281, amo.AUTO_APPROVED, False), (reviewer2, 54, amo.NOT_AUTO_APPROVED, False), (reviewer2, 91, amo.NOT_AUTO_APPROVED, False), (reviewer2, 192, amo.AUTO_APPROVED, False), (reviewer2, 222, amo.NOT_AUTO_APPROVED, False), (reviewer3, 178, amo.AUTO_APPROVED, True), (reviewer3, 95, amo.AUTO_APPROVED, True), (reviewer3, 123, amo.NOT_AUTO_APPROVED, True), (reviewer3, 328, amo.AUTO_APPROVED, True), (reviewer3, 450, amo.AUTO_APPROVED, True), (reviewer3, 999, amo.NOT_AUTO_APPROVED, True), (reviewer3, 131, amo.AUTO_APPROVED, True), (reviewer3, 74, amo.NOT_AUTO_APPROVED, True), (reviewer3, 15, amo.AUTO_APPROVED, True), (reviewer3, 48, amo.AUTO_APPROVED, True), (reviewer3, 87, amo.NOT_AUTO_APPROVED, True), (reviewer3, 265, amo.AUTO_APPROVED, True), (reviewer4, 951, amo.NOT_AUTO_APPROVED, True), (reviewer4, 8421, amo.AUTO_APPROVED, True), (reviewer4, 281, amo.AUTO_APPROVED, True), (reviewer4, 54, amo.NOT_AUTO_APPROVED, True), (reviewer4, 91, amo.NOT_AUTO_APPROVED, True), (reviewer4, 192, amo.AUTO_APPROVED, True), (reviewer4, 222, amo.NOT_AUTO_APPROVED, True), (reviewer4, 192, amo.AUTO_APPROVED, True), (reviewer4, 444, amo.NOT_AUTO_APPROVED, True), (reviewer4, 749, amo.AUTO_APPROVED, True), ] for review_action in data: self.create_and_review_addon(review_action[0], review_action[1], review_action[2], review_action[3])
def setUpTestData(cls): cls.addon1 = addon_factory(guid='@guid1', name='Neo') cls.addon1.name.__class__.objects.create(id=cls.addon1.name_id, locale='fr', localized_string='Elu') cls.addon2 = addon_factory(guid='@guid2', name='Two') cls.addon3 = addon_factory(guid='@guid3', name='Three') cls.user = user_factory(email='*****@*****.**') grant_permission(cls.user, 'AbuseReports:Edit', 'Abuse Report Triage') # Create a few abuse reports. cls.report1 = AbuseReport.objects.create( addon=cls.addon1, guid='@guid1', message='Foo', state=AbuseReport.STATES.VALID, created=days_ago(98), ) AbuseReport.objects.create( addon=cls.addon2, guid='@guid2', message='Bar', state=AbuseReport.STATES.VALID, ) AbuseReport.objects.create( addon=cls.addon3, guid='@guid3', message='Soap', reason=AbuseReport.REASONS.OTHER, created=days_ago(100), ) AbuseReport.objects.create( addon=cls.addon1, guid='@guid1', message='With Addon', reporter=user_factory(), ) # This one is against addon1 but without a FK, just the guid. AbuseReport.objects.create(guid='@guid1', message='', reporter=user_factory()) # This is a report for an addon not in the database. cls.report2 = AbuseReport.objects.create(guid='@unknown_guid', addon_name='Mysterious Addon', message='Doo') # This is one against a user. cls.report3 = AbuseReport.objects.create( user=user_factory(username='******'), message='Ehehehehe')
def generate_review_data(self): with freeze_time(self.last_week_begin): self.reviewer1 = user_factory(display_name='Volunteer A') self.reviewer2 = user_factory(display_name='Staff B') self.reviewer3 = user_factory(display_name=None) self.reviewer4 = user_factory(display_name='Staff Content D') self.reviewer5 = user_factory(display_name='Deleted') grant_permission(self.reviewer2, '', name='No Reviewer Incentives') grant_permission(self.reviewer4, '', name='No Reviewer Incentives') data = [ (self.reviewer1, 178, amo.AUTO_APPROVED, False), (self.reviewer1, 95, amo.AUTO_APPROVED, False), (self.reviewer1, 123, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 328, amo.AUTO_APPROVED, False), (self.reviewer1, 450, amo.AUTO_APPROVED, False), (self.reviewer1, 999, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 131, amo.AUTO_APPROVED, False), (self.reviewer1, 74, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 15, amo.AUTO_APPROVED, False), (self.reviewer2, 951, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 8421, amo.AUTO_APPROVED, False), (self.reviewer2, 281, amo.AUTO_APPROVED, False), (self.reviewer2, 54, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 91, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 192, amo.AUTO_APPROVED, False), (self.reviewer2, 222, amo.NOT_AUTO_APPROVED, False), (self.reviewer3, 178, amo.AUTO_APPROVED, True), (self.reviewer3, 95, amo.AUTO_APPROVED, True), (self.reviewer3, 123, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 328, amo.AUTO_APPROVED, True), (self.reviewer3, 450, amo.AUTO_APPROVED, True), (self.reviewer3, 999, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 131, amo.AUTO_APPROVED, True), (self.reviewer3, 74, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 15, amo.AUTO_APPROVED, True), (self.reviewer3, 48, amo.AUTO_APPROVED, True), (self.reviewer3, 87, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 265, amo.AUTO_APPROVED, True), (self.reviewer4, 951, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 8421, amo.AUTO_APPROVED, True), (self.reviewer4, 281, amo.AUTO_APPROVED, True), (self.reviewer4, 54, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 91, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 192, amo.AUTO_APPROVED, True), (self.reviewer4, 222, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 192, amo.AUTO_APPROVED, True), (self.reviewer4, 444, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 749, amo.AUTO_APPROVED, True), (self.reviewer5, 523, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 126, amo.AUTO_APPROVED, True), (self.reviewer5, 246, amo.AUTO_APPROVED, False), (self.reviewer5, 8740, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 346, amo.NOT_AUTO_APPROVED, False), (self.reviewer5, 985, amo.AUTO_APPROVED, False), (self.reviewer5, 123, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 93, amo.AUTO_APPROVED, True), (self.reviewer5, 22, amo.NOT_AUTO_APPROVED, False), (self.reviewer5, 165, amo.AUTO_APPROVED, True), ] for review_action in data: self.create_and_review_addon(review_action[0], review_action[1], review_action[2], review_action[3]) self.reviewer5.delete() mail.outbox = [] # Search plugin (submitted before auto-approval was implemented) search_plugin = addon_factory(type=4) ReviewerScore.award_points(self.reviewer3, search_plugin, amo.STATUS_APPROVED, version=search_plugin.versions.all()[0], post_review=False, content_review=True) # Dictionary (submitted before auto-approval was implemented) dictionary = addon_factory(type=3) ReviewerScore.award_points(self.reviewer3, dictionary, amo.STATUS_APPROVED, version=dictionary.versions.all()[0], post_review=False, content_review=True)
def generate_review_data(self): with freeze_time(self.last_week_begin): self.reviewer1 = user_factory(display_name='Volunteer A') self.reviewer2 = user_factory(display_name='Staff B') self.reviewer3 = user_factory(display_name=None) self.reviewer4 = user_factory(display_name='Staff Content D') self.reviewer5 = user_factory(display_name='Deleted') grant_permission(self.reviewer2, '', name='Staff') grant_permission(self.reviewer4, '', name='No Reviewer Incentives') data = [ (self.reviewer1, 178, amo.AUTO_APPROVED, False), (self.reviewer1, 95, amo.AUTO_APPROVED, False), (self.reviewer1, 123, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 328, amo.AUTO_APPROVED, False), (self.reviewer1, 450, amo.AUTO_APPROVED, False), (self.reviewer1, 999, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 131, amo.AUTO_APPROVED, False), (self.reviewer1, 74, amo.NOT_AUTO_APPROVED, False), (self.reviewer1, 15, amo.AUTO_APPROVED, False), (self.reviewer2, 951, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 8421, amo.AUTO_APPROVED, False), (self.reviewer2, 281, amo.AUTO_APPROVED, False), (self.reviewer2, 54, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 91, amo.NOT_AUTO_APPROVED, False), (self.reviewer2, 192, amo.AUTO_APPROVED, False), (self.reviewer2, 222, amo.NOT_AUTO_APPROVED, False), (self.reviewer3, 178, amo.AUTO_APPROVED, True), (self.reviewer3, 95, amo.AUTO_APPROVED, True), (self.reviewer3, 123, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 328, amo.AUTO_APPROVED, True), (self.reviewer3, 450, amo.AUTO_APPROVED, True), (self.reviewer3, 999, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 131, amo.AUTO_APPROVED, True), (self.reviewer3, 74, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 15, amo.AUTO_APPROVED, True), (self.reviewer3, 48, amo.AUTO_APPROVED, True), (self.reviewer3, 87, amo.NOT_AUTO_APPROVED, True), (self.reviewer3, 265, amo.AUTO_APPROVED, True), (self.reviewer4, 951, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 8421, amo.AUTO_APPROVED, True), (self.reviewer4, 281, amo.AUTO_APPROVED, True), (self.reviewer4, 54, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 91, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 192, amo.AUTO_APPROVED, True), (self.reviewer4, 222, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 192, amo.AUTO_APPROVED, True), (self.reviewer4, 444, amo.NOT_AUTO_APPROVED, True), (self.reviewer4, 749, amo.AUTO_APPROVED, True), (self.reviewer5, 523, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 126, amo.AUTO_APPROVED, True), (self.reviewer5, 246, amo.AUTO_APPROVED, False), (self.reviewer5, 8740, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 346, amo.NOT_AUTO_APPROVED, False), (self.reviewer5, 985, amo.AUTO_APPROVED, False), (self.reviewer5, 123, amo.NOT_AUTO_APPROVED, True), (self.reviewer5, 93, amo.AUTO_APPROVED, True), (self.reviewer5, 22, amo.NOT_AUTO_APPROVED, False), (self.reviewer5, 165, amo.AUTO_APPROVED, True), ] for review_action in data: self.create_and_review_addon(review_action[0], review_action[1], review_action[2], review_action[3]) self.reviewer5.delete()