def test_creation(self): self.app.post('/t1/ask', dict(text = 'why? why? why?', details = 'simply, maybe')) question = Question.find_by_slug('why-why-why') self.assertTrue(question) self.assertEqual("why? why? why?",question.text) self.assertEqual("simply, maybe",question.details) self.assertEqual(self.creator.name,question.creator.creator.name)
def post(self, boragle_slug, question_slug): question = Question.find_by_slug(question_slug) avatar = self.get_avatar_for_boragle(question.boragle) assert avatar, question answer = self.read('answer') if not(answer and answer.strip()): raise PostingError('Please provide an answer') Answer.create(question = question, text = answer, creator = avatar) page = self.calc_last_page(question.answer_count, settings.answer_page_size) self.redirect(question.url+'?page='+str(page))
def get(self, boragle_slug, question_slug): question = Question.find_by_slug(question_slug) assert question paginator = utils.Paginator(current_page = int(self.read('page') or 1), page_size = settings.answer_page_size, item_count = question.answer_count, getter = question.get_answers_by_votes) avatar = self.get_avatar_for_boragle(question.boragle) self.render_template('qna', dict(question=question, boragle = question.boragle, authdetails = utils.authdetails(question.url), creator = avatar, answers = paginator.items, paginator = paginator ))