From 7461377066e1e11ca0a3502b9c3f91550b4867fc Mon Sep 17 00:00:00 2001 From: rebuilt Date: Mon, 1 Nov 2021 21:58:18 +0100 Subject: [PATCH] Makes sure that subcategory displays all measures --- app/presenters/subcategory_presenter.rb | 2 +- spec/presenters/subcategory_presenter_spec.rb | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/app/presenters/subcategory_presenter.rb b/app/presenters/subcategory_presenter.rb index 171e3c67..fa9c4e89 100644 --- a/app/presenters/subcategory_presenter.rb +++ b/app/presenters/subcategory_presenter.rb @@ -27,7 +27,7 @@ class SubcategoryPresenter end def measure_presenters - measures.map { |measure| MeasurePresenter.new(measure: measure, academic_year: @academic_year, school: @school) } + @subcategory.measures.map { |measure| MeasurePresenter.new(measure: measure, academic_year: @academic_year, school: @school) } end private diff --git a/spec/presenters/subcategory_presenter_spec.rb b/spec/presenters/subcategory_presenter_spec.rb index 83aec095..72cdce6e 100644 --- a/spec/presenters/subcategory_presenter_spec.rb +++ b/spec/presenters/subcategory_presenter_spec.rb @@ -3,9 +3,8 @@ require 'rails_helper' describe SubcategoryPresenter do let(:academic_year) { create(:academic_year, range: '1989-90') } let(:school) { create(:school, name: 'Best School') } + let(:subcategory) { create(:subcategory, name: 'A great subcategory', description: 'A great description') } let(:subcategory_presenter) do - subcategory = create(:subcategory, name: 'A great subcategory', description: 'A great description') - measure1 = create(:measure, watch_low_benchmark: 4, growth_low_benchmark: 4.25, approval_low_benchmark: 4.5, ideal_low_benchmark: 4.75, subcategory: subcategory) survey_item1 = create(:survey_item, measure: measure1) create(:survey_item_response, survey_item: survey_item1, academic_year: academic_year, school: school, likert_score: 1) @@ -36,6 +35,10 @@ describe SubcategoryPresenter do expect(subcategory_presenter.gauge_presenter.title).to eq 'Growth' end + it 'creates a measure presenter for each measure in a subcategory' do + expect(subcategory_presenter.measure_presenters.count).to eq subcategory.measures.count + end + context 'When there are no measures populated with student or teacher surveys' do let(:empty_subcategory) { create :subcategory } let(:empty_subcategory_presenter) { SubcategoryPresenter.new(subcategory: empty_subcategory, academic_year: academic_year, school: school )}