apluslms/a-plus-rst-tools

The special value %100% that shows the hint when the student answers the question correctly is not working

Closed this issue · 6 comments

I am not sure what is the use case for the %100% character, but I could not find anything related to this in the code source.

Yes, but I assume that the a-plus-rst-tools must verify that the %100% character is in use, or at least define a default value for the feedback value.

for i,line in slicer(paragraph):

I also assume that the ! and the %100% characters are somehow bounded. I was expecting to prepend the ! character to the hint in for giving feedback when the right answer was not selected, and then, use the %100% character to give feedback when the correct answer was selected. Is that the use case we want. or how the %100% symbol is supposed to work?

...
!b § option **b** must be selected
%100%b § option **b** is correct

Yes, but I assume that the a-plus-rst-tools must verify that the %100% character is in use, or at least define a default value for the feedback value.

for i,line in slicer(paragraph):

I don't understand what kind of default value you expect to see. A-plus-rst-tools saves the %100% key in the config.yaml and the MOOC-Grader uses it to show the hint if the question is answered correctly. In a checkbox question, the correct answer may require selecting several checkboxes. %100% shows the hint when the question is answered correctly.

You can't combine other characters to the %100% value. Your example of appending b like %100%b will not work. You only use %100% on the left side of § in the RST.

I see you misunderstood the %100% first, but now it should be clear. I can now also see that it is not working in A+ v1.8. It worked in v1.7, but the changes to hints in v1.8 have broken this special value. This bug should be fixed.

You can test this question in A+ v1.7 and v1.8:

.. questionnaire:: questionnaire_demo 10
  :title: A simple multiple-choice questionnaire

  .. pick-any:: 10
    :required:

    Subdirective ``pick-any`` defines a multiple-choice question.

    When :math:`(x + 1)^2 = 16`, what is :math:`x`?

    a. 4
    *b. an integer
    *c. 3
    d. an irrational number
    ?e. -3
    *f. -5

    %100% § You got full points and this hint.

Now, with your explanation, it makes more sense. Maybe we need to edit the README.md file. I attach some screenshots on what the user should expect.

Another test case

.. questionnaire:: required-answers-and-show-model 30
  :title: Questionnaire with 100% feedback, answers required and show-model setting enabled.
  :submissions: 5
  :show-model: true

  This questionnaire required the students to answer the questions. The questionnaire also shows the model
  answer to the students after the exercise deadline has passed. If the students answer the single-choice and
  the multiple-choices question correctly, they will see a hint indicating that the answer is 100% correct.

  .. pick-one:: 10
    :required:

    **Modifiers used in this question:** ``required``.

    When :math:`(x + 1)^3 = 27`, what is :math:`x`?

    a. 9
    *b. 2
    c. 3

    %100% § The answer is 100% correct
    a § Not quite. Remember the cube root.
    b § Correct!
    c § Rather close. Remember that you can add or subtract the same number to both sides of the equation.

  .. pick-any:: 10
    :required:

    **Modifiers used in this question:** ``required``.

    When :math:`(x + 1)^2 = 16`, what is :math:`x`?

    a. 4
    *b. an integer
    *c. 3
    d. an irrational number
    e. -3
    *f. -5

    %100% § The answers are 100% correct

  .. freetext:: 10
    :required:

    **Modifiers used in this question:** ``required``.

    Type the word ``mandatory`` in the following text box.

    mandatory

Hint %100% was working in v1.7
questionnaire_feedback_working

Hint %100% is not working in v1.8
questionnaire-feedback-stopworking

A-plus and mooc-grader v1.10 have mostly fixed the %100% feedback. It does not yet work in checkbox questions that have enabled the new checkbox_feedback setting. There is a new issue for that:
apluslms/mooc-grader#119