Sort measures by the highest score to lowest score [finishes #179726949]

This commit is contained in:
Chad Serrant 2021-09-29 09:43:26 -04:00
parent d7ead5bac9
commit 87f268dd7a
4 changed files with 35 additions and 0 deletions

View file

@ -69,6 +69,11 @@ feature 'School dashboard', type: feature do
expect(problem_solving_emphasis_row['x']).to eq '0.0%'
page.assert_selector('.measure-row-bar', count: Measure.count)
professional_qualifications_row_index = measure_row_bars.find_index { |item| item['data-for-measure-id'] == '1A-i' }
student_physical_safety_row_index = measure_row_bars.find_index { |item| item['data-for-measure-id'] == '2A-i' }
problem_solving_emphasis_row_index = measure_row_bars.find_index { |item| item['data-for-measure-id'] == '4C-i' }
expect(student_physical_safety_row_index).to be < professional_qualifications_row_index
expect(professional_qualifications_row_index).to be < problem_solving_emphasis_row_index
end
let(:username) { 'winchester' }

View file

@ -122,4 +122,24 @@ RSpec.describe MeasureGraphRowPresenter do
end
end
end
context 'sorting scores' do
it 'selects a shorter bar width before a longer bar' do
this_presenter = MeasureGraphRowPresenter.new measure: measure, score: 3.7
other_presenter = MeasureGraphRowPresenter.new measure: measure, score: 4.4
expect(this_presenter <=> other_presenter).to be < 0
end
it 'selects a warning bar before a ideal bar' do
this_presenter = MeasureGraphRowPresenter.new measure: measure, score: 1.0
other_presenter = MeasureGraphRowPresenter.new measure: measure, score: 5.0
expect(this_presenter <=> other_presenter).to be < 0
end
it 'selects an ideal bar after a warning bar' do
this_presenter = MeasureGraphRowPresenter.new measure: measure, score: 4.4
other_presenter = MeasureGraphRowPresenter.new measure: measure, score: 1.0
expect(this_presenter <=> other_presenter).to be > 0
end
end
end