class AcceptedAnswerTests(TestCase): def setUp(self): self.jack = Util.new_user('jack') self.oneliner = OneLiner(user=self.jack) self.oneliner.save() self.bill = Util.new_user('bill') OneLiner(user=self.bill).save() self.mike = Util.new_user('mike') self.question = Question(user=self.mike) self.question.save() def test_accept(self): self.assertEqual(AcceptedAnswer.objects.count(), 0) self.assertTrue(not self.question.is_answered) self.question.accept_answer(self.oneliner) self.assertTrue(self.question.is_answered) self.assertEqual(AcceptedAnswer.objects.count(), 1) self.question.accept_answer(self.oneliner) self.assertTrue(self.question.is_answered) self.assertEqual(AcceptedAnswer.objects.count(), 1) def test_accept_clear(self): self.test_accept() self.assertTrue(AcceptedAnswer.objects.count() > 0) self.assertTrue(self.question.is_answered) self.question.clear_all_answers() self.assertFalse(AcceptedAnswer.objects.count() > 0) self.assertFalse(self.question.is_answered) def test_clear_answers_when_is_answered_is_cleared(self): self.test_accept() self.assertTrue(AcceptedAnswer.objects.count() > 0) self.assertTrue(self.question.is_answered) self.question.is_answered = False self.question.save() self.assertFalse(AcceptedAnswer.objects.count() > 0)
def new_question(user): question = Question(user=user) question.save() return question