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

Batch Grader Fix, "isSolved" Flag and Related Stuff #567

Merged
merged 4 commits into from
Sep 26, 2023
Merged

Conversation

hansongu123
Copy link
Collaborator

@hansongu123 hansongu123 commented Aug 4, 2023

Description

  • xml parser
  • "isSolved" flag

Here's the implementation of the Batch Grader using an .xml parser to traverse through a collection of student submission files, reading the attribute value of "isSolved" flag (which was planned to be implemented in the earlier versions) to improve its processing efficiency.

Two attributes have been added to the exporter. One is the "isSolved" flag - runs puzzle checker when a proof is saved (instead of running it inside of the Batch Grader); Another is "lastSaved" - give the exact time the proof is last saved. (meant to be a supporting function for the isSolved flag, from our group discussion, as a way to hash its value)

The default values of these attributes are also added to the template puzzle files.

Some small changes are also included, like the names of the save buttons in the menu panel.

Closes #547
Closes #564
Closes #227

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Enhancement (improvement to an already existing feature)

How Has This Been Tested?

Checklist:

  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (if applicable)
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@hansongu123 hansongu123 changed the base branch from master to dev August 4, 2023 19:27
@hansongu123
Copy link
Collaborator Author

For the ease of reviewing, the main changes are located in HomePanel.java and PuzzleExporter.java

@04vmatsibekker
Copy link
Collaborator

When testing this PR out after saving one of the puzzle files some issues came up. At first I noticed no changes to the puzzle file, isSaved column. Then after multiple attempts of saving one of Cristn's puzzles with a slight change, I did get a result, but it is not quite correct yet.
image_480

I have been discussing this PR with Hanson for the past few days. And it seems that it works for him, but somehow not for me, despite verifying that I tested the PR out correctly.

If the <solved/> tag existed but had no boolean element, the xml would not reflect the expected output. Added default behavior for this case
Copy link
Collaborator

@Chase-Grajeda Chase-Grajeda left a comment

Choose a reason for hiding this comment

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

Fixed remaining bug for unexpected spreadsheet output when flag element is missing. Passes tests

@Chase-Grajeda Chase-Grajeda merged commit 8b02d97 into dev Sep 26, 2023
4 checks passed
@hansongu123
Copy link
Collaborator Author

hansongu123 commented Sep 29, 2023

Thanks! I'm happy that this is finally approved!

@charlestian23 charlestian23 deleted the batch_grader branch November 13, 2023 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants