コード例 #1
0
ファイル: tests.py プロジェクト: manish-kr/online_test
 def test_dump_questions_into_json(self):
     """ Test dump questions into json """
     question = Question()
     question_id = ['24']
     questions = json.loads(question.dump_into_json(question_id, self.user1))
     for q in questions:
         self.assertEqual(self.question2.summary, q['summary'])
         self.assertEqual(self.question2.language, q['language'])
         self.assertEqual(self.question2.type, q['type'])
         self.assertEqual(self.question2.description, q['description'])
         self.assertEqual(self.question2.points, q['points'])
         self.assertTrue(self.question2.active)
         self.assertEqual(self.question2.snippet, q['snippet'])
コード例 #2
0
ファイル: views.py プロジェクト: manish-kr/online_test
def show_all_questions(request):
    """Show a list of all the questions currently in the databse."""

    user = request.user
    ci = RequestContext(request)
    context = {}
    if not is_moderator(user):
        raise Http404("You are not allowed to view this page !")

    if request.method == 'POST':
        if request.POST.get('delete') == 'delete':
            data = request.POST.getlist('question')
            if data is not None:
                question = Question.objects.filter(id__in=data, user_id=user.id).delete()

        if request.POST.get('upload') == 'upload':
            form = UploadFileForm(request.POST, request.FILES)
            if form.is_valid():
                questions_file = request.FILES['file']
                if questions_file.name.split('.')[-1] == "json":
                    questions_list = questions_file.read()
                    question = Question()
                    question.load_from_json(questions_list, user)
                else:
                    message = "Please Upload a JSON file"
                    context['message'] = message

        if request.POST.get('download') == 'download':
            question_ids = request.POST.getlist('question')
            if question_ids:
                question = Question()
                questions = question.dump_into_json(question_ids, user)
                response = HttpResponse(questions, content_type='text/json')
                response['Content-Disposition'] = 'attachment; filename=\
                                            "{0}_questions.json"'.format(user)
                return response
            else:
                msg = "Please select atleast one question"
                context['msg'] = msg

    questions = Question.objects.filter(user_id=user.id)
    form = QuestionFilterForm(user=user)
    upload_form = UploadFileForm()
    context['papers'] = []
    context['question'] = None
    context['questions'] = questions
    context['form'] = form
    context['upload_form'] = upload_form
    return my_render_to_response('yaksh/showquestions.html', context,
                                 context_instance=ci)
コード例 #3
0
 def test_dump_questions_into_json(self):
     """ Test dump questions into json """
     question = Question()
     question_id = [self.question2.id]
     questions = json.loads(question.dump_into_json(question_id, self.user2))
     test_case = self.question2.get_test_cases()
     for q in questions:
         self.assertEqual(self.question2.summary, q['summary'])
         self.assertEqual(self.question2.language, q['language'])
         self.assertEqual(self.question2.type, q['type'])
         self.assertEqual(self.question2.description, q['description'])
         self.assertEqual(self.question2.points, q['points'])
         self.assertTrue(self.question2.active)
         self.assertEqual(self.question2.snippet, q['snippet'])
         self.assertEqual(self.question2.test_case_type, q['test_case_type'])
         self.assertEqual([case.get_field_value() for case in test_case], q['testcase'])
コード例 #4
0
 def test_dump_questions_into_json(self):
     """ Test dump questions into json """
     question = Question()
     question_id = [self.question2.id]
     questions = json.loads(question.dump_into_json(question_id,
                                                    self.user2))
     test_case = self.question2.get_test_cases()
     for q in questions:
         self.assertEqual(self.question2.summary, q['summary'])
         self.assertEqual(self.question2.language, q['language'])
         self.assertEqual(self.question2.type, q['type'])
         self.assertEqual(self.question2.description, q['description'])
         self.assertEqual(self.question2.points, q['points'])
         self.assertTrue(self.question2.active)
         self.assertEqual(self.question2.snippet, q['snippet'])
         self.assertEqual(self.question2.test_case_type,
                          q['test_case_type'])
         self.assertEqual([case.get_field_value() for case in test_case],
                          q['testcase'])