def setUp(self): super(QuizAttemptTests, self).setUp() self.categories = ["adm", "apo", "cou", "dis", "eva", "fai", "giv", "hea", "int", "kno"] # To give some consistency, don't randomize the answers (after this point, anyway). answers = [5, 2, 0, 2, 0, 5, 2, 0, 0, 0, 2, 5, 2, 2, 2, 2, 2, 5, 0, 2] self.attempt = QuizAttempt.create(1) questions = [] for i in range(0, 20): questions.append(QuizAttemptAnswer( question_number=i + 1, answer=answers[i], category=self.categories[i % 10] )) self.attempt.questions = questions self.attempt.put() self.attempt2 = QuizAttempt.create(87752083) questions = [] for i in range(0, 20): questions.append(QuizAttemptAnswer( question_number=i + 1, answer=answers[i], category=self.categories[i % 10] )) self.attempt2.questions = questions self.attempt2.put()
def get(self, **context): """ GET """ user = User.get_or_create_by_user_id(self.request.GET.get('userId')) attempt = QuizAttempt.get_by_user_id(user.user_id, context['quiz_type']) if not attempt: # Start up a new QuizAttempt! attempt = QuizAttempt.create(user_id=user.user_id, quiz_type=context['quiz_type']) if settings.is_devappserver(): user.paid = True context.update({ 'user': user, 'user_id': user.user_id, 'quiz_attempt': attempt }) logging.info(context) self.render_response('survey.html', **context)
def test_get_by_user_id_returns_short_a_quiz_type_if_param_is_passed(self): QuizAttempt.create(1, quiz_type='short_a') self.assertEqual('short_a', QuizAttempt.get_by_user_id(1, quiz_type='short_a').quiz_type)
def test_get_all_attempts_for_user_id_returns_three_results_if_user_has_three_attempts(self): QuizAttempt.create(user_id=1, quiz_type='short_a') QuizAttempt.create(user_id=1, quiz_type='short_b') attempts = QuizAttempt.get_all_attempts_for_user_id(1) self.assertEqual(3, len(attempts))
def test_create_quiz_takes_user_id_and_quiz_type(self): QuizAttempt.create(1, 'short_a') my_key = QuizAttempt.build_key(1, 'short_a') self.assertEqual('short_a', my_key.get().quiz_type)
def test_first_page_property_returns_first_20_questions_for_new_user_id(self): QuizAttempt.create(1) self.assertEqual(1, self.survey.first_page)