def test_update_courses(self): u = User(name="unknown", email="*****@*****.**", status="inactive") _id = u.save() u = User.get(_id) self.assertFalse(u.courses, "Courses count") courses = [Course.get(1), Course.get(2), Course.get(3)] u.courses = courses u.update() u = User.get(_id) self.assertTrue(u.courses, "Courses count") self.assertEqual(u.courses, courses, "Update courses") u.delete()
class UserInfo(object): def __init__(self): router = Router(META_SERVERS, sync=False) self._user = User(router) self._marker = Marker() def add(self, user, password, uid): ret = self._user.get(user, 'uid') if not ret: self._user.put(user, password=password, uid=uid) self._marker.mark(uid, DOMAIN_USR, AREA) return True def get_password(self, user): return self._user.get(user, 'password')
def get(self, request, *args, **kwargs): pk = kwargs.get('pk') if pk: obj = User.get(id=pk) if obj: obj.delete() return redirect(self.success_url)
def callback(): # Get authorization code Google sent back to you code = request.args.get("code") # Find out what URL to hit to get tokens that allow you to ask for # things on behalf of a user google_provider_cfg = get_google_provider_cfg() token_endpoint = google_provider_cfg["token_endpoint"] # Prepare and send a request to get tokens! Yay tokens! token_url, headers, body = client.prepare_token_request( token_endpoint, authorization_response=request.url, redirect_url=request.base_url, code=code) token_response = requests.post( token_url, headers=headers, data=body, auth=(GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET), ) # Parse the tokens! client.parse_request_body_response(json.dumps(token_response.json())) # Now that you have tokens (yay) let's find and hit the URL # from Google that gives you the user's profile information, # including their Google profile image and email userinfo_endpoint = google_provider_cfg["userinfo_endpoint"] uri, headers, body = client.add_token(userinfo_endpoint) userinfo_response = requests.get(uri, headers=headers, data=body) # You want to make sure their email is verified. # The user authenticated with Google, authorized your # app, and now you've verified their email through Google! if userinfo_response.json().get("email_verified"): unique_id = userinfo_response.json()["sub"] users_email = userinfo_response.json()["email"] picture = userinfo_response.json()["picture"] users_name = userinfo_response.json()["given_name"] else: return "User email not available or not verified by Google.", 400 # Create a user in your db with the information provided # by Google user = User(id_=unique_id, name=users_name, email=users_email, profile_pic=picture, address="") # Doesn't exist? Add it to the database. if not User.get(unique_id): User.create(unique_id, users_name, users_email, picture, "") # Begin user session by logging the user in login_user(user) # Send user back to homepage return redirect("/dashboard/users/" + unique_id)
def test_create_user(self): u = User(name='Gary Busey', email='*****@*****.**', status='active') _id = u.save() self.assertIsNotNone(_id, 'User id') u = User.get(id=_id) self.assertEqual(u.name, 'Gary Busey', 'User name') self.assertEqual(u.email, '*****@*****.**', 'User email') self.assertEqual(u.status, 'active', 'User status') u.delete()
def test_delete_user(self): u = User(name='Jeff Bridges', email='*****@*****.**', status='inactive') _id = u.save() self.assertIsNotNone(_id, 'User id') u.delete() u = User.get(id=_id) self.assertIsNone(u, "Delete user")
def test_added_category(self): u = User(name="unknown", email="*****@*****.**", status="inactive") courses = [Course.get(1), Course.get(2), Course.get(3)] u.courses = courses _id = u.save() u = User.get(id=_id) self.assertEqual(len(u.courses), len(courses), "Count courses") self.assertEqual(u.courses, courses, "Saving courses") u.delete()
def test_update_user(self): u = User(name="unknown", email="*****@*****.**", status="inactive") _id = u.save() u = User.get(id=_id) self.assertEqual(u.name, 'unknown', 'User name') self.assertEqual(u.email, '*****@*****.**', 'User email') self.assertEqual(u.status, 'inactive', 'User status') u.name = 'Michael Cimino' u.update() u = User.get(id=_id) self.assertEqual(u.name, 'Michael Cimino', 'Update user name') self.assertEqual(u.email, '*****@*****.**', 'Update user email') self.assertEqual(u.status, 'inactive', 'Update user status') u.email = "*****@*****.**" u.update() u = User.get(id=_id) self.assertEqual(u.name, 'Michael Cimino', 'Update user name') self.assertEqual(u.email, '*****@*****.**', 'Update user email') self.assertEqual(u.status, 'inactive', 'Update user status') u.status = 'active' u.update() u = User.get(id=_id) self.assertEqual(u.name, 'Michael Cimino', 'Update user name') self.assertEqual(u.email, '*****@*****.**', 'Update user email') self.assertEqual(u.status, 'active', 'Update user status') self.assertIsNone(u.phone, "User phone is not null") u.phone = '+380123456789' u.update() u = User.get(id=_id) self.assertEqual(u.phone, '+380123456789', 'Update user phone') self.assertIsNone(u.mobile_phone, "User mobile phone is not null") u.mobile_phone = '+389876543210' u.update() u = User.get(id=_id) self.assertEqual(u.mobile_phone, '+389876543210', 'Update user mobile phone')
def get_user(self): try: _id = int(self.kwargs.get('pk')) except: raise Http404 return User.get(id=_id)
def load_user(user_id): return User.get(user_id)