Esempio n. 1
0
 def test_list_reports(self):
     db_spam_report.create(self.revision_id, self.user2.id,
                           "This is a report")
     db_review.update(
         review_id=self.review["id"],
         drafted=self.review["is_draft"],
         text="Updated Review",
     )
     self.review = db_review.get_by_id(self.review["id"])
     db_spam_report.create(self.review["last_revision"]["id"],
                           self.user1.id,
                           "This is again a report on the updated review")
     # two reports on the old revision and one on the new revision.
     reports, count = db_spam_report.list_reports(
         review_id=self.review["id"])  # pylint: disable=unused-variable
     self.assertEqual(count, 3)
     # get all reports by a user.
     reports, count = db_spam_report.list_reports(user_id=self.user2.id)
     self.assertEqual(count, 1)
     # archive and include all archived reports.
     # there must be two reports including the archived one.
     db_spam_report.archive(self.user1.id,
                            self.review["last_revision"]["id"])
     reports, count = db_spam_report.list_reports(inc_archived=True)
     self.assertEqual(count, 3)
     # there must be one reports excluding the archived one.
     reports, count = db_spam_report.list_reports(inc_archived=False)
     self.assertEqual(count, 2)
Esempio n. 2
0
def report(id):
    review = Review.query.get_or_404(str(id))
    if review.is_hidden and not current_user.is_admin():
        raise NotFound(gettext("Review has been hidden."))
    if review.user == current_user:
        flash.error(gettext("You cannot report your own review."))
        return redirect(url_for('.entity', id=id))

    if current_user.is_blocked:
        flash.error(
            gettext("You are not allowed to report this review because "
                    "your account has been blocked by a moderator."))
        return redirect(url_for('.entity', id=id))

    last_revision_id = review.last_revision.id
    report = db_spam_report.get(current_user.id, last_revision_id)
    if report:
        flash.error(gettext("You have already reported this review."))
        return redirect(url_for('.entity', id=id))

    form = ReviewReportForm()
    if form.validate_on_submit():
        db_spam_report.create(last_revision_id, current_user.id,
                              form.reason.data)
        flash.success(gettext("Review has been reported."))
        return redirect(url_for('.entity', id=id))

    return render_template('review/report.html', review=review, form=form)
Esempio n. 3
0
def review_spam_report_handler(review_id, user):
    """Create spam report for a specified review.

    **OAuth scope:** vote

    :resheader Content-Type: *application/json*
    """
    review = get_review_or_404(review_id)
    if review["is_hidden"]:
        raise NotFound("Review has been hidden.")
    if review["user_id"] == user.id:
        raise InvalidRequest('own')
    db_spam_report.create(review["last_revision"]["id"], user.id, "Spam")
    return jsonify(message="Spam report created successfully")
Esempio n. 4
0
def review_spam_report_handler(review_id, user):
    """Create spam report for a specified review.

    **OAuth scope:** vote

    :resheader Content-Type: *application/json*
    """
    review = get_review_or_404(review_id)
    if review["is_hidden"]:
        raise NotFound("Review has been hidden.")
    if review["user_id"] == user.id:
        raise InvalidRequest('own')
    db_spam_report.create(review["last_revision"]["id"], user.id, "Spam")
    return jsonify(message="Spam report created successfully")
Esempio n. 5
0
 def setUp(self):
     super(SpamReportTestCase, self).setUp()
     author = User(db_users.get_or_create(0, '0', new_user_data={
         "display_name": "Author",
     }))
     self.user1 = User(db_users.get_or_create(1, '1', new_user_data={
         "display_name": "Tester #1",
     }))
     self.user2 = User(db_users.get_or_create(2, '2', new_user_data={
         "display_name": "Tester #2",
     }))
     license = db_license.create(
         id='Test',
         full_name='Test License',
     )
     self.review = db_review.create(
         entity_id="e7aad618-fa86-3983-9e77-405e21796eca",
         entity_type="release_group",
         text="Testing!",
         user_id=author.id,
         is_draft=False,
         license_id=license["id"],
     )
     self.revision_id = self.review["last_revision"]["id"]
     self.report = db_spam_report.create(self.revision_id, self.user1.id, "To test is this report")
     self.report_time = self.report["reported_at"]
Esempio n. 6
0
 def setUp(self):
     super(UserTestCase, self).setUp()
     self.user1 = User(db_users.get_or_create(1, 'tester_1', new_user_data={
         "display_name": "test",
     }))
     self.user2 = User(db_users.get_or_create(2, "тестер", new_user_data={
         "display_name": "test1",
     }))
     self.author = User(db_users.get_or_create(3, "author1", new_user_data={
         "display_name": "Author1",
     }))
     license = db_license.create(
         id='Test',
         full_name='Test License',
     )
     self.review = db_review.create(
         entity_id="e7aad618-fa86-3983-9e77-405e21796eca",
         entity_type="release_group",
         text="Testing!",
         user_id=self.author.id,
         is_draft=False,
         license_id=license["id"],
     )
     db_vote.submit(self.user1.id, self.review["last_revision"]["id"], True)
     self.review_created = self.review["last_revision"]["timestamp"]
     self.review_id = self.review["id"]
     self.revision_id = self.review["last_revision"]["id"]
     self.report = db_spam_report.create(self.revision_id, self.user1.id, "Testing Reason Report")
 def setUp(self):
     super(SpamReportTestCase, self).setUp()
     author = User(db_users.get_or_create(0, '0', new_user_data={
         "display_name": "Author",
     }))
     self.user1 = User(db_users.get_or_create(1, '1', new_user_data={
         "display_name": "Tester #1",
     }))
     self.user2 = User(db_users.get_or_create(2, '2', new_user_data={
         "display_name": "Tester #2",
     }))
     license = db_license.create(
         id='Test',
         full_name='Test License',
     )
     self.review = db_review.create(
         entity_id="e7aad618-fa86-3983-9e77-405e21796eca",
         entity_type="release_group",
         text="Testing!",
         user_id=author.id,
         is_draft=False,
         license_id=license["id"],
     )
     self.revision_id = self.review["last_revision"]["id"]
     self.report = db_spam_report.create(self.revision_id, self.user1.id, "To test is this report")
     self.report_time = self.report["reported_at"]
Esempio n. 8
0
 def setUp(self):
     super(UserTestCase, self).setUp()
     self.user1 = User(
         db_users.get_or_create('tester_1',
                                new_user_data={
                                    "display_name": "test",
                                }))
     self.user2 = User(
         db_users.get_or_create("тестер",
                                new_user_data={
                                    "display_name": "test1",
                                }))
     self.author = User(
         db_users.get_or_create("author1",
                                new_user_data={
                                    "display_name": "Author1",
                                }))
     license = db_license.create(
         id='Test',
         full_name='Test License',
     )
     self.review = db_review.create(
         entity_id="e7aad618-fa86-3983-9e77-405e21796eca",
         entity_type="release_group",
         text="Testing!",
         user_id=self.author.id,
         is_draft=False,
         license_id=license["id"],
     )
     db_vote.submit(self.user1.id, self.review["last_revision"]["id"], True)
     self.review_created = self.review["last_revision"]["timestamp"]
     self.review_id = self.review["id"]
     self.revision_id = self.review["last_revision"]["id"]
     self.report = db_spam_report.create(self.revision_id, self.user1.id,
                                         "Testing Reason Report")
Esempio n. 9
0
 def test_list_reports(self):
     report1 = db_spam_report.create(self.revision_id, self.user2.id, "This is a report")
     self.review.update(text="Updated Review")
     report2 = db_spam_report.create(self.review.last_revision.id, self.user1.id, "This is again a report on the updated review")
     # two reports on the old revision and one on the new revision.
     reports, count = db_spam_report.list_reports(review_id=self.review.id)
     self.assertEqual(count, 3)
     # get all reports by a user.
     reports, count = db_spam_report.list_reports(user_id=self.user2.id)
     self.assertEqual(count, 1)
     # archive and include all archived reports.
     # there must be two reports including the archived one.
     db_spam_report.archive(self.user1.id, self.review.last_revision.id)
     reports, count = db_spam_report.list_reports(inc_archived=True)
     self.assertEqual(count, 3)
     # there must be one reports excluding the archived one.
     reports, count = db_spam_report.list_reports(inc_archived=False)
     self.assertEqual(count, 2)
 def test_list_reports(self):
     db_spam_report.create(self.revision_id, self.user2.id, "This is a report")
     db_review.update(
         review_id=self.review["id"],
         drafted=self.review["is_draft"],
         text="Updated Review",
     )
     self.review = db_review.get_by_id(self.review["id"])
     db_spam_report.create(self.review["last_revision"]["id"], self.user1.id, "This is again a report on the updated review")
     # two reports on the old revision and one on the new revision.
     reports, count = db_spam_report.list_reports(review_id=self.review["id"])  # pylint: disable=unused-variable
     self.assertEqual(count, 3)
     # get all reports by a user.
     reports, count = db_spam_report.list_reports(user_id=self.user2.id)
     self.assertEqual(count, 1)
     # archive and include all archived reports.
     # there must be two reports including the archived one.
     db_spam_report.archive(self.user1.id, self.review["last_revision"]["id"])
     reports, count = db_spam_report.list_reports(inc_archived=True)
     self.assertEqual(count, 3)
     # there must be one reports excluding the archived one.
     reports, count = db_spam_report.list_reports(inc_archived=False)
     self.assertEqual(count, 2)
Esempio n. 11
0
 def setUp(self):
     super(SpamReportTestCase, self).setUp()
     author = User(db_users.get_or_create('0', new_user_data={
         "display_name": "Author",
     }))
     self.user1 = User(db_users.get_or_create('1', new_user_data={
         "display_name": "Tester #1",
     }))
     self.user2 = User(db_users.get_or_create('2', new_user_data={
         "display_name": "Tester #2",
     }))
     license = License(id='Test', full_name='Test License')
     db.session.add(license)
     db.session.commit()
     self.review = Review.create(
             release_group='e7aad618-fa86-3983-9e77-405e21796eca',
             text="Testing!",
             user_id=author.id,
             is_draft=False,
             license_id=license.id,
     )
     self.revision_id = self.review.last_revision.id
     self.report = db_spam_report.create(self.revision_id, self.user1.id, "To test is this report")
     self.report_time = self.report["reported_at"]
Esempio n. 12
0
 def test_create(self):
     report = db_spam_report.create(self.revision_id, self.user2.id, "This is a report")
     self.assertEqual(report["reason"], "This is a report")
 def test_create(self):
     report = db_spam_report.create(self.revision_id, self.user2.id, "This is a report")
     self.assertEqual(report["reason"], "This is a report")