pull/1/head
parent
e8f4773c65
commit
50b3bc678c
@ -0,0 +1,37 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Analyze
|
||||
module Graph
|
||||
module Column
|
||||
class Multiracial < GroupedBarColumnPresenter
|
||||
include Analyze::Graph::Column::RaceScore
|
||||
def label
|
||||
# TODO: offset labels so they don't overlap
|
||||
'Multiracial'
|
||||
end
|
||||
|
||||
def basis
|
||||
'student'
|
||||
end
|
||||
|
||||
def show_irrelevancy_message?
|
||||
!measure.includes_student_survey_items?
|
||||
end
|
||||
|
||||
def show_insufficient_data_message?
|
||||
# TODO: implement this logic. Resize messages so they are bound to their column
|
||||
false
|
||||
end
|
||||
|
||||
def score(year_index)
|
||||
# TODO: make sure the score calculation bubble up instead of just average
|
||||
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||
end
|
||||
|
||||
def race
|
||||
Race.find_by_qualtrics_code 100
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -0,0 +1,22 @@
|
||||
require 'rails_helper'
|
||||
include Analyze::Graph
|
||||
include Analyze::Graph::Column
|
||||
describe StudentsByGroup do
|
||||
let(:american_indian) { create(:race, qualtrics_code: 1) }
|
||||
let(:asian) { create(:race, qualtrics_code: 2) }
|
||||
let(:black) { create(:race, qualtrics_code: 3) }
|
||||
let(:hispanic) { create(:race, qualtrics_code: 4) }
|
||||
let(:white) { create(:race, qualtrics_code: 5) }
|
||||
let(:unknown) { create(:race, qualtrics_code: 99) }
|
||||
let(:multiracial) { create(:race, qualtrics_code: 100) }
|
||||
context 'when initialized with a list of races' do
|
||||
it 'generates corresponding race columns' do
|
||||
races = [american_indian]
|
||||
expect(StudentsByGroup.new(races:).columns).to eq [AmericanIndian, AllStudent]
|
||||
races = [american_indian, asian]
|
||||
expect(StudentsByGroup.new(races:).columns).to eq [AmericanIndian, Asian, AllStudent]
|
||||
races = [black, hispanic, multiracial]
|
||||
expect(StudentsByGroup.new(races:).columns).to eq [Black, Hispanic, Multiracial, AllStudent]
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Reference in new issue