[Planner] Allow all conflict checks so that future mods correctly flag Prereq check failure #4232
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Calculate all conflicts so that prereq and duplicate checks for future sems do not get shadowed.
Context
Fixes #4231
If a module in the future fails
semesterCheck
, it will not ignoreprereqCheck
orduplicateCheck
warnings. This allows for the intended case of only showing Prerequisites / Duplicates warnings regardless of whether Module is currently offered in that semester.Implementation
ModuleInfo
now takes an array ofConflict
instead of just a single onedisplayedConflict
will either be the first conflict in theConflicts
array if current year, or else either Prerequisite or Duplicate conflict for non-current yearsAssumptions:
Semester
conflicts due to possible changes in future timetableOther Information
edit any test filesadd more tests to check this behaviour