Esempio n. 1
0
 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)
Esempio n. 2
0
 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)
Esempio n. 3
0
 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))
Esempio n. 4
0
 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)
Esempio n. 5
0
 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)
Esempio n. 6
0
 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))
Esempio n. 7
0
 def test_finder_returns_none_no_match(self):
     self.assertEqual(None,Boragle.find_by_slug('blah'))
Esempio n. 8
0
 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)
Esempio n. 9
0
 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)
Esempio n. 10
0
 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)