Beispiel #1
0
def test_tfquestion_init0():
    quest = exam.TrueFalseQuest()

    assert quest.text == ""
    assert quest.subject == ""
    assert quest.image == Path()
    assert quest.level == 0
Beispiel #2
0
def test_tfquestion_add0():
    """test add an answer
    """
    answer = exam.TrueFalseAnswer(True)
    quest = exam.TrueFalseQuest()
    quest.add_answer(answer)

    assert quest.answers == (answer, )
    assert quest.correct_answer == answer
Beispiel #3
0
def test_tfquestion_add2():
    """test add 2 answer
    """
    true_answer_1 = exam.TrueFalseAnswer(True)
    true_answer_2 = exam.TrueFalseAnswer(True)
    quest = exam.TrueFalseQuest()
    quest.add_answer(true_answer_1)

    with pytest.raises(ValueError):
        quest.add_answer(true_answer_2)
Beispiel #4
0
def test_tfquestion_add1():
    """test add 2 answer
    """
    true_answer = exam.TrueFalseAnswer(True)
    false_answer = exam.TrueFalseAnswer(False)
    quest = exam.TrueFalseQuest()
    quest.answers = (true_answer, false_answer)

    assert quest.answers == (true_answer, false_answer)
    assert quest.correct_answer == true_answer
Beispiel #5
0
def test_tfquestion_init1():
    """test init with no answer
    """
    text, subject, image, level = ("q text", "q subject", Path("image.png"), 2)
    quest = exam.TrueFalseQuest(text, subject, image, level)

    assert quest.text == text
    assert quest.subject == subject
    assert quest.image == image
    assert quest.level == level
Beispiel #6
0
def test_tfquestion_add3():
    """test add 3 answer ... maybe redundant
    """
    true_answer_1 = exam.TrueFalseAnswer(True)
    false_answer = exam.TrueFalseAnswer(False)
    true_answer_2 = exam.TrueFalseAnswer(True)
    quest = exam.TrueFalseQuest()
    quest.add_answer(true_answer_1)

    with pytest.raises(ValueError):
        quest.answers = (true_answer_1, false_answer, true_answer_2)
Beispiel #7
0
def test_tfquestion_load0():
    """load question and two answers.
    """
    tupl = ("t", "s", "i", 1, "1", "image", "", "")
    quest = exam.TrueFalseQuest()
    quest.load_sequentially(iter(tupl))

    assert quest.text == tupl[0]
    assert quest.subject == tupl[1]
    assert quest.image == Path(tupl[2])
    assert quest.level == tupl[3]
    assert quest.answers != ()
    assert quest.answers[0].boolean == bool(tupl[4])
    assert quest.answers[0].image == Path(tupl[5])
    assert quest.answers[1].boolean == bool(tupl[6])
    assert quest.answers[1].image == Path(tupl[7])
    with pytest.raises(IndexError):
        _ = quest.answers[2]