def get(self, boragle_slug, question_slug, answer_key,vote ): boragle = Boragle.find_by_slug(boragle_slug) avatar = self.get_avatar_for_boragle(boragle) question = boragle.find_question_by_slug(question_slug) answer = question.get_answer(answer_key) answer.vote(avatar, vote == 'up') self.redirect(question.url)
def test_leaving_url_empty_slugs_the_name(self): import utils name="test1 is the new thing" slug = utils.slugify(name) self.app.post('/new', dict(name=name, url = " ", desc = 'desc')) new_boragle = Boragle.find_by_slug(slug) self.assertTrue(new_boragle) self.assertEqual(name,new_boragle.name) self.assertEqual("desc",new_boragle.desc)
def get(self, boragle_slug): boragle = Boragle.find_by_slug(boragle_slug) avatar = Avatar.find_or_create(boragle=boragle, creator=self.creator) if self.creator else None start = self.read('start') or None questions = boragle.get_latest_questions(count = settings.question_page_size + 1, start = start) next = questions.pop().sort_date if len(questions) == settings.question_page_size + 1 else None self.render_template('boragle', dict(boragle=boragle, questions = questions, authdetails = utils.authdetails(boragle.url), creator = avatar, next = next))
def post(self, boragle_slug): boragle = Boragle.find_by_slug(boragle_slug) avatar = self.get_avatar_for_boragle(boragle) text = self.read('text') if not text or not text.strip(): raise PostingError('Please enter a question.') assert avatar new_question = Question(text = text, details = self.read('details'), boragle = boragle, creator = avatar) new_question.put() self.redirect(new_question.url)
def post(self): assert self.creator name = self.read('name') if not (name and name.strip()): raise PostingError("Please enter a name for your Boragle") slug = utils.slugify(self.read('url')) if slug == '': slug = utils.slugify(name) if Boragle.find_by_slug(slug): raise PostingError('This url is already in use.') new_boragle = Boragle(name = self.read('name'), slugs = [slug], desc = self.read('desc'), creator = self.creator) new_boragle.put() self.redirect(new_boragle.url)
def get(self, boragle_slug): boragle = Boragle.find_by_slug(boragle_slug) avatar = self.get_avatar_for_boragle(boragle) self.render_template('ask-question', dict(boragle = boragle, authdetails = utils.authdetails(boragle.url+'/'+settings.urls['ask']), creator = avatar))
def test_finder_returns_none_no_match(self): self.assertEqual(None,Boragle.find_by_slug('blah'))
def test_boragle_saves_vitals(self): koi_boragle = self.make_boragle() koi_boragle.put() boragle = Boragle.find_by_slug('koi') self.assertEqual(koi_boragle.name,boragle.name) self.assertEqual(koi_boragle.desc,boragle.desc)
def test_creation(self): self.app.post('/new', dict(name="test1", url = "t1", desc = 'desc')) new_boragle = Boragle.find_by_slug('t1') self.assertTrue(new_boragle) self.assertEqual("test1",new_boragle.name) self.assertEqual("desc",new_boragle.desc)
def test_url_is_slugified_before_save(self): self.app.post('/new', dict(name="test1", url = ".t45 tes#t", desc = 'desc')) new_boragle = Boragle.find_by_slug('t45-test') self.assertTrue(new_boragle)