parent
09963c3323
commit
0ed6cbe6b4
@ -1,4 +0,0 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class DataAvailability < Struct.new(:id, :description, :available?)
|
||||
end
|
||||
@ -0,0 +1,4 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class Summary < Struct.new(:id, :description, :available?)
|
||||
end
|
||||
@ -0,0 +1,49 @@
|
||||
require 'rails_helper'
|
||||
|
||||
describe StudentSurveyPresenter do
|
||||
let(:school) { nil }
|
||||
let(:academic_year) { nil }
|
||||
let(:measure_1A_i) { create(:measure, measure_id: '1A-i') }
|
||||
let(:scale_1) { create(:student_scale, measure: measure_1A_i) }
|
||||
let(:survey_item_1) do
|
||||
create(:student_survey_item, survey_item_id: 's-sbel-q1', scale: scale_1,
|
||||
prompt: 'I am happy when I am in class.')
|
||||
end
|
||||
let(:survey_item_2) do
|
||||
create(:student_survey_item, survey_item_id: 's-sbel-q2', scale: scale_1,
|
||||
prompt: 'My teacher gives me help when I need it.')
|
||||
end
|
||||
let(:survey_item_3) do
|
||||
create(:student_survey_item, survey_item_id: 's-sbel-es1', scale: scale_1,
|
||||
prompt: 'This prompt should not show up')
|
||||
end
|
||||
let(:measure_1B_i) { create(:measure, measure_id: '1B-i') }
|
||||
before do
|
||||
scale_1
|
||||
survey_item_1
|
||||
survey_item_2
|
||||
survey_item_3
|
||||
end
|
||||
|
||||
describe '#descriptions_and_availability' do
|
||||
context 'When there is a survey item with a blank prompt' do
|
||||
it 'returns a list containing the survey item properties excluding survey items with blank prompts' do
|
||||
result = StudentSurveyPresenter.new(
|
||||
measure_id: measure_1A_i.measure_id,
|
||||
survey_items: measure_1A_i.student_survey_items,
|
||||
has_sufficient_data: true,
|
||||
school:,
|
||||
academic_year:
|
||||
).descriptions_and_availability
|
||||
expect(
|
||||
result
|
||||
).to eq [
|
||||
Summary.new('s-sbel-q1',
|
||||
'I am happy when I am in class.', true),
|
||||
Summary.new('s-sbel-q2',
|
||||
'My teacher gives me help when I need it.', true)
|
||||
]
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Reference in new issue