fix: correct grades minmax values (#277)
When the assignment type is selected, but assignment id isn't - the courseGradeMax, courseGradeMin assignmentGradeMax and assignmentGradeMin values become nullable. This leads to incorrect filtering results. Fix: - Preserve the courseGradeMax and courseGradeMin values in such case;
This commit is contained in:
@@ -91,17 +91,10 @@ export const formattedGradeLimits = (state) => {
|
||||
const { assignmentGradeMax, assignmentGradeMin } = app.assignmentGradeLimits(state);
|
||||
const { courseGradeMax, courseGradeMin } = app.courseGradeLimits(state);
|
||||
const hasAssignment = filters.selectedAssignmentId(state) !== undefined;
|
||||
if (!hasAssignment) {
|
||||
return {
|
||||
assignmentGradeMax: null,
|
||||
assignmentGradeMin: null,
|
||||
courseGradeMax: null,
|
||||
courseGradeMin: null,
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
assignmentGradeMax: assignmentGradeMax === maxGrade ? null : assignmentGradeMax,
|
||||
assignmentGradeMin: assignmentGradeMin === minGrade ? null : assignmentGradeMin,
|
||||
assignmentGradeMax: (assignmentGradeMax === maxGrade || !hasAssignment) ? null : assignmentGradeMax,
|
||||
assignmentGradeMin: (assignmentGradeMin === minGrade || !hasAssignment) ? null : assignmentGradeMin,
|
||||
courseGradeMax: courseGradeMax === maxGrade ? null : courseGradeMax,
|
||||
courseGradeMin: courseGradeMin === minGrade ? null : courseGradeMin,
|
||||
};
|
||||
|
||||
@@ -260,15 +260,15 @@ describe('root selectors', () => {
|
||||
};
|
||||
const grade1 = '42';
|
||||
const grade2 = '3.14';
|
||||
it('returns an object of nulls if assignment is not set', () => {
|
||||
it('returns an object of nullable assignmentGrades if assignment is not set', () => {
|
||||
mockId(undefined);
|
||||
mockAssgn(grade1, grade2);
|
||||
mockCourse(grade1, grade2);
|
||||
expect(selector(testState)).toEqual({
|
||||
assignmentGradeMax: null,
|
||||
assignmentGradeMin: null,
|
||||
courseGradeMax: null,
|
||||
courseGradeMin: null,
|
||||
courseGradeMax: '42',
|
||||
courseGradeMin: '3.14',
|
||||
});
|
||||
});
|
||||
it('returns null for each extreme iff they are equal their default', () => {
|
||||
|
||||
Reference in New Issue
Block a user