def test_find_post_with_invalid_categories(self):

        try:
            Post.find_post_by_keyword_pagination("")
            self.fail("Expect InvalidFieldError")
        except InvalidFieldError:
            pass
예제 #2
0
def search_post_by_keyword():
    keyword = request.args["keyword"] or None
    page = request.args.get("page", 1)
    per_page = request.args.get("per_page", PER_PAGE)

    try:
        pagination = Post.find_post_by_keyword_pagination(keyword, page, per_page)
        return render_template("search_result.html", pagination=pagination, keyword=keyword, menu_items=default.categories)
    except Exception as e:
        abort(400)
 def test_find_post_with_valid_info(self):
     pagination = Post.find_post_by_keyword_pagination("orem", 1, 3)
     self.assertEqual(len(pagination.items), 3)
    def test_find_post_with_not_exist_keyword(self):

        pagination = Post.find_post_by_keyword_pagination("Java")
        self.assertEqual(len(pagination.items), 0)
 def test_find_post_with_out_of_range_index(self):
     pagination = Post.find_post_by_keyword_pagination("Lorem", 4, 7)
     self.assertEqual(len(pagination.items), 0)
 def test_find_post_with_invalid_pagination_param(self):
     pagination = Post.find_post_by_keyword_pagination("Lorem", 0, -2)
     self.assertEqual(len(pagination.items), 10)
 def test_find_post_with_sql_injection(self):
     try:
         pagination = Post.find_post_by_keyword_pagination("Lorem';select * from user;--", 1, 3)
         self.fail("Expect InvalidFieldError")
     except:
         pass