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

Add Publish Grading Feature #2546

Closed
wants to merge 13 commits into from

Conversation

emptygx
Copy link
Contributor

@emptygx emptygx commented Jul 7, 2023

Description

(closes #2522)

Currently, the grading states design and business logic cause ambiguity with resubmission of assessments being assumed to be graded immediately, and with grades being displayed when they should not.

This feature aims to solve this issue by introducing a new grading state published and a new backend boolean is_grading_published, allowing explicit publishing of student's grades on the frontend and preventing the fetching of grades if they have yet to be published, hence creating a better logic flow.

This pull request contains changes to be made to the frontend to enable this new feature.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Code quality improvements

How to test

(Import your own assessment XML files for testing if possible)

  1. Using a test student account, submit an assessment
  2. Using a test staff/admin account, grade some but not all questions in the assessment
  3. Staff/admin should not be able to publish grades if not all questions have been graded
  4. Using a test staff/admin account, complete grading the assessment
  5. The grades should not be visible to the student even upon all questions being graded
  6. Using a test staff/admin account, publish the assessment grades using the new UI button in the grading dashboard
  7. The grades should now be visible to the student
  8. Using a test staff/admin account, unsubmit the assessment
  9. The assessment should be unpublished automatically and the student should not be able to view any XP for that assessment, even if the student resubmits again
  10. Students should still be able to view comments
  11. Once regrading is done, publish grades again and the student should be able to view the grades
  12. Staff/Admin is also able to unpublish the grades after publishing them if required

Checklist

  • I have tested this code
  • I have updated the documentation

- Add new grading state 'Published'
- Add UI component to grading dashboard to enable publishing feature
- Update sagas to accept new backend boolean and allow publish requests
- Update frontend logic for computing grading status
- Add new notification
- Update relavant badges and misc files for new field and grading state
# Conflicts:
#	src/commons/application/actions/SessionActions.ts
#	src/commons/sagas/BackendSaga.ts

- Remove no longer relevant tokens in publish grading requests
@RichDom2185 RichDom2185 self-requested a review July 10, 2023 06:35
@emptygx emptygx marked this pull request as ready for review July 12, 2023 09:46
@RichDom2185
Copy link
Member

@emptygx can we fix the failing tests?

@emptygx
Copy link
Contributor Author

emptygx commented Aug 7, 2023

@emptygx can we fix the failing tests?

Hey so sorry but I am not too sure how to go about fixing them, could I have some guidance on this? Thank you!

@RichDom2185
Copy link
Member

Superseded by #2856.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Overhaul grading states design
4 participants