From e7f06ef4e970061170aaa685777d85c6ed2456f2 Mon Sep 17 00:00:00 2001 From: Nelson Jovel Date: Wed, 20 Dec 2023 14:03:15 -0800 Subject: [PATCH] chore: remove lowell seeding rules --- app/lib/rule/seed_only_lowell.rb | 14 -------------- app/services/rule/no_rule.rb | 9 --------- app/services/rule/skip_non_lowell_schools.rb | 16 ---------------- app/services/survey_responses_data_loader.rb | 16 +++++----------- spec/lib/seeder_spec.rb | 12 ------------ 5 files changed, 5 insertions(+), 62 deletions(-) delete mode 100644 app/lib/rule/seed_only_lowell.rb delete mode 100644 app/services/rule/no_rule.rb delete mode 100644 app/services/rule/skip_non_lowell_schools.rb diff --git a/app/lib/rule/seed_only_lowell.rb b/app/lib/rule/seed_only_lowell.rb deleted file mode 100644 index be4f397e..00000000 --- a/app/lib/rule/seed_only_lowell.rb +++ /dev/null @@ -1,14 +0,0 @@ -module Rule - class SeedOnlyLowell - attr_reader :row - - def initialize(row:) - @row = row - end - - def skip_row? - district = row['District'].strip.downcase - 'lowell' != district - end - end -end diff --git a/app/services/rule/no_rule.rb b/app/services/rule/no_rule.rb deleted file mode 100644 index 16dd6bf9..00000000 --- a/app/services/rule/no_rule.rb +++ /dev/null @@ -1,9 +0,0 @@ -module Rule - class NoRule - def initialize(row:); end - - def skip_row? - false - end - end -end diff --git a/app/services/rule/skip_non_lowell_schools.rb b/app/services/rule/skip_non_lowell_schools.rb deleted file mode 100644 index 230f0b03..00000000 --- a/app/services/rule/skip_non_lowell_schools.rb +++ /dev/null @@ -1,16 +0,0 @@ -module Rule - class SkipNonLowellSchools - attr_reader :row - - def initialize(row:) - @row = row - end - - def skip_row? - return true if row.school.nil? - return true if row.school.district.nil? - - row.school.district.name != 'Lowell' - end - end -end diff --git a/app/services/survey_responses_data_loader.rb b/app/services/survey_responses_data_loader.rb index d8d3550c..f5f27a1b 100644 --- a/app/services/survey_responses_data_loader.rb +++ b/app/services/survey_responses_data_loader.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class SurveyResponsesDataLoader - def load_data(filepath:, rules: [Rule::NoRule]) + def load_data(filepath:) File.open(filepath) do |file| headers = file.first headers_array = CSV.parse(headers).first @@ -9,15 +9,14 @@ class SurveyResponsesDataLoader file.lazy.each_slice(500) do |lines| survey_item_responses = CSV.parse(lines.join, headers:).map do |row| - process_row(row: SurveyItemValues.new(row:, headers: headers_array, survey_items: all_survey_items, schools:), - rules:) + process_row(row: SurveyItemValues.new(row:, headers: headers_array, survey_items: all_survey_items, schools:)) end SurveyItemResponse.import survey_item_responses.compact.flatten, batch_size: 500, on_duplicate_key_update: :all end end end - def from_file(file:, rules: []) + def from_file(file:) headers = file.gets headers_array = CSV.parse(headers).first all_survey_items = survey_items(headers:) @@ -29,8 +28,7 @@ class SurveyResponsesDataLoader next unless line.present? CSV.parse(line, headers:).map do |row| - survey_item_responses << process_row(row: SurveyItemValues.new(row:, headers: headers_array, survey_items: all_survey_items, schools:), - rules:) + survey_item_responses << process_row(row: SurveyItemValues.new(row:, headers: headers_array, survey_items: all_survey_items, schools:)) end row_count += 1 @@ -70,14 +68,10 @@ class SurveyResponsesDataLoader @speds ||= Sped.by_designation end - def process_row(row:, rules:) + def process_row(row:) return unless row.dese_id? return unless row.school.present? - rules.each do |rule| - return if rule.new(row:).skip_row? - end - process_survey_items(row:) end diff --git a/spec/lib/seeder_spec.rb b/spec/lib/seeder_spec.rb index 0fc090eb..46e0760f 100644 --- a/spec/lib/seeder_spec.rb +++ b/spec/lib/seeder_spec.rb @@ -3,7 +3,6 @@ require "#{Rails.root}/app/lib/seeder" describe Seeder do let(:seeder) { Seeder.new } - let(:lowell_seeder) { Seeder.new rules: [Rule::SeedOnlyLowell] } after :each do DatabaseCleaner.clean @@ -98,17 +97,6 @@ describe Seeder do expect(SurveyItemResponse.where(id: removed_survey_item_response)).not_to exist end end - - context "when passing a rule to only load lowell schools" do - it "only loads lowell schools" do - expect do - lowell_seeder.seed_districts_and_schools sample_districts_and_schools_csv - end.to change { District.count }.by(1) - .and change { - School.count - }.by(1) - end - end end # context 'respondents' do