Esempio n. 1
0
    def test_save_user(self):
        #create test user with 3 friends
        app_xs_token = get_app_access_token(APP_ID, APP_SECRET)
        test_user = create_test_user(APP_ID, app_xs_token)
        friend_1 = create_test_user(APP_ID, app_xs_token)
        friend_2 = create_test_user(APP_ID, app_xs_token)
        friend_3 = create_test_user(APP_ID, app_xs_token)
        make_friend_connection(test_user["id"], friend_1["id"], test_user["access_token"], friend_1["access_token"])
        make_friend_connection(test_user["id"], friend_2["id"], test_user["access_token"], friend_2["access_token"])
        make_friend_connection(test_user["id"], friend_3["id"], test_user["access_token"], friend_3["access_token"])
        
        fb_user_info, user = save_user(test_user["access_token"], "someauthcode") 
        
        #assert that <<User>> records are indeed created
        assert not get_user_from_email(test_user["email"]) is None

        #assert that <<FriendConnection>> records are made
        from db import FriendConnection
        assert FriendConnection.query.filter_by(fb_user_from=user.facebook_user.id).count() == 3    
Esempio n. 2
0
 def test_login(self):
     app_xs_token = get_app_access_token(APP_ID, APP_SECRET)
     test_user = create_test_user(APP_ID, app_xs_token)
     friend_1 = create_test_user(APP_ID, app_xs_token)
     friend_2 = create_test_user(APP_ID, app_xs_token)
     friend_3 = create_test_user(APP_ID, app_xs_token)
     make_friend_connection(test_user["id"], friend_1["id"], test_user["access_token"], friend_1["access_token"])
     make_friend_connection(test_user["id"], friend_2["id"], test_user["access_token"], friend_2["access_token"])
     make_friend_connection(test_user["id"], friend_3["id"], test_user["access_token"], friend_3["access_token"])
     
     #create friend_2 first
     friend2_fb_user_info, friend2_user = save_user(friend_2["access_token"], "someauthcode")
     
     data = {"access_token": test_user["access_token"]}
     
     #login test_user
     response = self.client.put("/user/?", data=data)
     assert "ok" in response.data
     json_resp = loads(response.data)
     assert json_resp["status"] == "ok"
     assert json_resp["result"]["friends"][0]["user_id"] == friend2_user.id 
Esempio n. 3
0
 def test_authorization(self):
     """
     tests the authorization of a rest api call
     """
     #create a user
     app_xs_token = get_app_access_token(APP_ID, APP_SECRET)
     test_user = create_test_user(APP_ID, app_xs_token)
     auth_code = "someauthcode"
     fb_user_info, user = save_user(test_user["access_token"], auth_code)
     user_id = user.id
     api_key = gen_api_key(test_user["access_token"], user_id)
     
     #create signature
     signature = "\n".join([auth_code, "put", "checkpoint"])
     encrypted_sig = hmac.new(api_key, signature)
     base64_sig = base64.encodestring(encrypted_sig.hexdigest())
     
     #using user's credentials to access new_checkpoint api
     data = {"signature": base64_sig,
             "user_id": user_id}
     resp = self.client.put("/checkpoint/", data=data)
     
Esempio n. 4
0
 def create_facebook_test_user(self):
     self.has_facebook_test_user = True
     return create_test_user(APP_ID, self.get_app_access_token())