def test_password_checking(self): from shootout.models import User self._addUser() self.assertTrue(User.check_password(u"username", u"password")) self.assertFalse(User.check_password(u"username", u"wrong")) self.assertFalse(User.check_password(u"nobody", u"password"))
def test_add_user(self): from shootout.models import User user = User(u'username', u'password', u'name', u'email') self.session.add(user) self.session.flush() user = self.session.query(User).filter(User.username == u'username') user = user.first() self.assertEqual(user.username, u'username') self.assertEqual(user.name, u'name') self.assertEqual(user.email, u'email') self.assertEqual(user.hits, 0) self.assertEqual(user.misses, 0) self.assertEqual(user.delivered_hits, 0) self.assertEqual(user.delivered_misses, 0)
def idea_vote(request): post_data = request.POST target = post_data.get('target') session = DBSession() idea = Idea.get_by_id(target) voter_username = authenticated_userid(request) voter = User.get_by_username(voter_username) if post_data.get('form.vote_hit'): vote = 'hit' idea.hits += 1 idea.author.hits += 1 voter.delivered_hits += 1 elif post_data.get('form.vote_miss'): vote = 'miss' idea.misses += 1 idea.author.misses += 1 voter.delivered_misses += 1 idea.voted_users.append(voter) session.flush() redirect_url = route_url('idea', request, idea_id=idea.idea_id) response = HTTPMovedPermanently(location=redirect_url) return response
def _addUser(self, username=u'username'): from shootout.models import User user = User(username=username, password=u'password', name=u'name', email=u'email') self.session.add(user) self.session.flush() return user
def user_add(request): form = Form(request, schema=RegistrationSchema) if 'form.submitted' in request.POST and form.validate(): session = DBSession() username = form.data['username'] user = User(username=username, password=form.data['password'], name=form.data['name'], email=form.data['email']) session.add(user) headers = remember(request, username) redirect_url = route_url('main', request) return HTTPFound(location=redirect_url, headers=headers) login_form = login_form_view(request) return { 'form': FormRenderer(form), 'toolbar': toolbar_view(request), 'cloud': cloud_view(request), 'latest': latest_view(request), 'login_form': login_form, }
def user_view(request): username = request.matchdict['username'] user = User.get_by_username(username) login_form = login_form_view(request) return { 'user': user, 'toolbar': toolbar_view(request), 'cloud': cloud_view(request), 'latest': latest_view(request), 'login_form': login_form, }
def user_view(request): username = request.matchdict["username"] user = User.get_by_username(username) login_form = login_form_view(request) return { "user": user, "toolbar": toolbar_view(request), "cloud": cloud_view(request), "latest": latest_view(request), "login_form": login_form, }
def user_view(request): username = request.matchdict['username'] user = User.get_by_username(username) login_form = login_form_view(request) return { 'user': user, 'toolbar': toolbar_view(request), 'cloud': cloud_view(request), 'latest': latest_view(request), 'login_form' :login_form, }
def login_view(request): main_view = route_url('main', request) came_from = request.params.get('came_from', main_view) params = request.params if 'submit' in params: login = params['login'] password = params['password'] if User.check_password(login, password): headers = remember(request, login) request.session.flash('Logged in successfully.') return HTTPFound(location=came_from, headers=headers) request.session.flash('Failed to login.') return HTTPFound(location=came_from)
def login_view(request): main_view = route_url('main', request) came_from = request.params.get('came_from', main_view) post_data = request.POST if 'submit' in post_data: login = post_data['login'] password = post_data['password'] if User.check_password(login, password): headers = remember(request, login) request.session.flash(u'Logged in successfully.') return HTTPFound(location=came_from, headers=headers) request.session.flash(u'Failed to login.') return HTTPFound(location=came_from)
def login_view(request): main_view = request.route_url("main") came_from = request.params.get("came_from", main_view) post_data = request.POST if "submit" in post_data: login = post_data["login"] password = post_data["password"] if User.check_password(login, password): headers = remember(request, login) request.session.flash(u"Logged in successfully.") return HTTPFound(location=came_from, headers=headers) request.session.flash(u"Failed to login.") return HTTPFound(location=came_from)
def idea_add(request): target = request.GET.get('target') session = DBSession() if target: target = Idea.get_by_id(target) if not target: return HTTPNotFound() kind = 'comment' else: kind = 'idea' form = Form(request, schema=AddIdeaSchema) if 'form.submitted' in request.POST and form.validate(): author_username = authenticated_userid(request) author = User.get_by_username(author_username) idea = Idea( target=target, author=author, title=form.data['title'], text=form.data['text'] ) tags = Tag.create_tags(form.data['tags']) if tags: idea.tags = tags session.add(idea) redirect_url = route_url('idea', request, idea_id=idea.idea_id) return HTTPFound(location=redirect_url) login_form = login_form_view(request) return { 'form': FormRenderer(form), 'toolbar': toolbar_view(request), 'cloud': cloud_view(request), 'latest': latest_view(request), 'login_form': login_form, 'target': target, 'kind': kind, }
def idea_add(request): target = request.GET.get('target') session = DBSession() if target: target = Idea.get_by_id(target, with_joinedload=False) if not target: return HTTPNotFound() kind = 'comment' else: kind = 'idea' form = Form(request, schema=AddIdeaSchema) if 'form.submitted' in request.POST and form.validate(): author_username = authenticated_userid(request) author = User.get_by_username(author_username) idea = Idea(target=target, author=author, title=form.data['title'], text=form.data['text']) tags = Tag.create_tags(form.data['tags']) if tags: idea.tags = tags session.add(idea) redirect_url = route_url('idea', request, idea_id=idea.idea_id) return HTTPFound(location=redirect_url) login_form = login_form_view(request) return { 'form': FormRenderer(form), 'toolbar': toolbar_view(request), 'cloud': cloud_view(request), 'latest': latest_view(request), 'login_form': login_form, 'target': target, 'kind': kind, }
def idea_add(request): target = request.params.get("target") session = DBSession() if target: target = Idea.get_by_id(target, with_joinedload=False) if not target: return HTTPNotFound() kind = "comment" else: kind = "idea" form = Form(request, schema=AddIdeaSchema) if "form.submitted" in request.POST and form.validate(): author_username = authenticated_userid(request) author = User.get_by_username(author_username) idea = Idea(target=target, author=author, title=form.data["title"], text=form.data["text"]) tags = Tag.create_tags(form.data["tags"]) if tags: idea.tags = tags session.add(idea) redirect_url = request.route_url("idea", idea_id=idea.idea_id) return HTTPFound(location=redirect_url) login_form = login_form_view(request) return { "form": FormRenderer(form), "toolbar": toolbar_view(request), "cloud": cloud_view(request), "latest": latest_view(request), "login_form": login_form, "target": target, "kind": kind, }
def idea_vote(request): post_data = request.POST target = post_data.get("target") session = DBSession() idea = Idea.get_by_id(target, with_joinedload=False) voter_username = authenticated_userid(request) voter = User.get_by_username(voter_username) redirect_url = request.route_url("idea", idea_id=idea.idea_id) response = HTTPMovedPermanently(location=redirect_url) if voter.user_id == idea.author_id: request.session.flash(u"You cannot vote on your own ideas.") return response if post_data.get("form.vote_hit"): idea.vote(voter, True) elif post_data.get("form.vote_miss"): idea.vote(voter, False) session.flush() return response
def idea_vote(request): post_data = request.POST target = post_data.get('target') session = DBSession() idea = Idea.get_by_id(target, with_joinedload=False) voter_username = authenticated_userid(request) voter = User.get_by_username(voter_username) redirect_url = route_url('idea', request, idea_id=idea.idea_id) response = HTTPMovedPermanently(location=redirect_url) if voter.user_id == idea.author_id: request.session.flash(u'You cannot vote on your own ideas.') return response if post_data.get('form.vote_hit'): idea.vote(voter, True) elif post_data.get('form.vote_miss'): idea.vote(voter, False) session.flush() return response
def test_password_checking(self): from shootout.models import User self._addUser() self.assertTrue(User.check_password(u'username', u'password')) self.assertFalse(User.check_password(u'username', u'wrong')) self.assertFalse(User.check_password(u'nobody', u'password'))
def test_getting_by_username(self): from shootout.models import User user = self._addUser() self.assertEqual(user, User.get_by_username(u'username'))