Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

learn: Prepare for txtar support by levy #385

Merged
merged 6 commits into from
Jun 22, 2024
Merged

learn: Prepare for txtar support by levy #385

merged 6 commits into from
Jun 22, 2024

Conversation

juliaogris
Copy link
Member

  • Factor out QuestionModel.correctAnswerIndices method for later reuse by
    txtar.
  • Remove embedMD type in QuestionModel as it is not used other than in tests.
  • Add Filename() method to model interface, which is necessary in
    QuestionModel based on txtar sub-questions that don't have an underlying
    filename.
  • Ensure testdata descriptions match the question and answer.

And further testdata and error message improvements.

Improve test export tests to print more readable error message on failure and
add a TODO to composition so we won't forget to to add exercise round-robin
when we create unit tests and quizzes in the future. These are more
preparatory non-functional changes.
Improve error messages to not include Filenames twice. Filenames should be
added as close as possible to were the error happens not in a higher-level
course or unit model when the error originates from the answer.
Make markdown questions testdata more meaningful and ensure the description
matches the question and answer: If the question contains source code the
question should be "What does this program output", rather than the previous
copy-paste error:
"Which program generates the following output".
Add Filename() method to model interface. This allows us to use
model.Filename() to create the HTML output files rather than relying on the
original `mdFiles` slice from which we created the models.

In a follow-up commit we break 1-1 relationship between .md and .html files
when we create sub-question from txtar files. For these types of questions we
require that the QuestionModel provides its (target) filename.
Remove embedMD type and use renderer directly. embedMD only had a renderer and
an ID for debug purposes and testing, let's simplify things.
Factor out QuestionModel.correctAnswerIndices method so that we can re-use it
in a follow-up commit for printing answers for .txtar links.
Copy link
Member

@camh- camh- left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🍀 LGTM

@juliaogris juliaogris merged commit cfa4eac into main Jun 22, 2024
3 checks passed
@juliaogris juliaogris deleted the learn-txtar-prep branch June 22, 2024 13:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants