示例#1
0
def _search_checkpoints():
    """
    A simple implementation of keyword search for Checkpoint.
    Append a wildcard to the left and right of the phrase, and search
    Checkpoint's Description, Name, and User's name (Facebook name) 
    """
    user_id = request.args.get("user_id")
    search_term = request.args.get("keyword").strip()
    user = get_user(user_id)
    
    search_results = search_user_checkpoints(user, search_term)
    return search_results    
 def test_search_user_checkpoints(self):
     """
     unit test for search_user_checkpoints()
     """
     user_a = self.create_saved_test_user_with_checkpoint()
     user_b = self.create_saved_test_user_with_checkpoint()
     user_c = self.create_saved_test_user_with_checkpoint()
     self.befriend_test_user(user_a, [user_b])
     
     #search user_a facebook name
     user_a_fb_name = user_a.user_obj.facebook_user.name
     res = search_user_checkpoints(user_a.user_obj, user_a_fb_name)
     assert len(res) == 1 and res[0] == user_a.user_checkpoint_obj
     
     #search by desc
     desc = user_b.checkpoint_obj.description
     res = search_user_checkpoints(user_a.user_obj, desc)
     assert len(res) == 1 and res[0] == user_b.user_checkpoint_obj
     
     #search by name
     name = user_b.checkpoint_obj.name
     res = search_user_checkpoints(user_a.user_obj, name)
     assert len(res) == 1 and res[0] == user_b.user_checkpoint_obj