예제 #1
0
    def test_delete_survey_question_fail2(self, client):
        question_count = get_db().survey_questions.count()
        qid = objectId_str(ex.survey_question5["_id"])
        path = "/surveys/questions/{qid}".format(qid=qid)

        res = client.delete(path)
        self.assertEqual(get_db().survey_questions.count(), question_count)
        assert_redirect_page(self, res)
예제 #2
0
    def test_submit_invalid_response1(self, client):
        form_data = {
            "survey_question1": 1,
            "survey_question2": 2,
        }

        res = client.post("surveys/{sid}".format(sid=objectId_str("surveyxxx003")), data=form_data)
        assert_response_failed_page(self, res)
예제 #3
0
    def test_delete_survey_fail1(self, client):
        survey_count = get_db().surveys.count()
        sid = objectId_str(ex.survey2["_id"])
        path = "/surveys/{sid}".format(sid=sid)

        res = client.delete(path)
        self.assertEqual(res.status_code, 403)
        self.assertEqual(get_db().surveys.count(), survey_count)
예제 #4
0
    def test_delete_survey_question_fail1(self, client):
        question_count = get_db().survey_questions.count()
        qid = objectId_str(ex.survey_question5["_id"])
        path = "/surveys/questions/{qid}".format(qid=qid)

        res = client.delete(path)
        self.assertEqual(get_db().survey_questions.count(), question_count)
        self.assertEqual(res.status_code, 403)
예제 #5
0
    def test_delete_survey_fail2(self, client):
        survey_count = get_db().surveys.count()
        sid = objectId_str(ex.survey2["_id"])
        path = "/surveys/{sid}".format(sid=sid)

        res = client.delete(path)
        self.assertEqual(survey_count, get_db().surveys.count())
        assert_redirect_page(self, res)
예제 #6
0
    def test_delete_survey_success2(self, client):
        survey_count = get_db().surveys.count()
        sid = objectId_str(ex.survey3["_id"])
        path = "/surveys/{sid}".format(sid=sid)

        res = client.delete(path)
        self.assertEqual(get_db().surveys.count(), survey_count - 1)
        self.assertEqual(0, get_db().responses.find({"survey_id": sid}).count())
        assert_404_page(self, client.get(path))
예제 #7
0
    def test_retrieve_response_data(self):

        response_data = retrieve_response_data(objectId_str("survey000003"))
        self.assertEqual(len(response_data["questions"]), 4)
        self.assertEqual(len(response_data["questions"][0]["answers"].keys()), 4)

        q4_ans4 = ex.survey_question4["answers"][3]["answer"]


        self.assertEqual(response_data["questions"][3]["answers"][q4_ans4], 60)
예제 #8
0
    def test_submit_valid_response2(self, client):

        form_data = {
            "survey_question0": 0,
            "survey_question1": 2,
            "survey_question2": 3,
            "survey_question3": 2,
        }

        res = client.post("/surveys/{sid}".format(sid=objectId_str("survey000003")), data=form_data)
        assert_response_submitted_page(self, res)
예제 #9
0
    def test_get_survey_results_invalid(self, client):
        res = client.get("/surveys/{sid}/responses".format(sid=objectId_str("surveyxxxx03")))

        assert_not_survey_results_page(self, res)
        self.assertEqual(res.status_code, 404)
        assert_404_page(self, res)
예제 #10
0
    def test_get_survey_results_page_forbidden(self, client):
        res = client.get("/surveys/{sid}/responses".format(sid=objectId_str("survey000002")))

        self.assertEqual(res.status_code, 403)
        assert_not_survey_results_page(self, res)
        assert_403_page(self, res)
예제 #11
0
    def test_get_survey_results_page2(self, client):
        res = client.get("/surveys/{sid}/responses".format(sid=objectId_str("survey000001")))

        assert_survey_results_page(self, res)
예제 #12
0
 def test_get_survey_results_page1(self, client):
     res = client.get("/surveys/{sid}/responses".format(sid=objectId_str("survey000003")))
     # print res.data
     assert_survey_results_page(self, res)
예제 #13
0
            "answer": "Strongly Prefer Y"
        }
    ]
}


survey_questions = [survey_question1, survey_question2, survey_question3, survey_question4, survey_question5]

ex.add(survey_question1=survey_question1,
        survey_question2=survey_question2,
        survey_question3=survey_question3,
        survey_question4=survey_question4,
        survey_question5=survey_question5)

survey1 = dict(_id=ObjectId("survey000001"), name="Survey One",
                    qids=[objectId_str(qid) for qid in ["sq0000000001", "sq0000000002"]])
survey2 = dict(_id=ObjectId("survey000002"), name="Survey Two",
                    qids=[objectId_str(qid) for qid in ["sq0000000003","sq0000000004"]])
survey3 = dict(_id=ObjectId("survey000003"), name="Survey Three",
                qids=[objectId_str(qid) for qid in ["sq0000000001", "sq0000000002", "sq0000000003","sq0000000004"]])

surveys = [survey1, survey2, survey3]

ex.add(survey1=survey1,
        survey2=survey2,
        survey3=survey3)

response1 = {
    "_id": "response1",
    "survey_id": "survey00001",
    "date_taken": datetime.utcnow(),