Skip to content

Commit

Permalink
Merge pull request #1774 from rhian-cs/1759-remove-transition-aged-yo…
Browse files Browse the repository at this point in the history
…uth_column-from-case-import-csv

[#1759] Remove transition_aged_youth column from CSV file when importing a case
  • Loading branch information
compwron committed Feb 22, 2021
2 parents 023dd43 + 5f3cee5 commit 43345d6
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 14 deletions.
5 changes: 3 additions & 2 deletions app/lib/importers/case_importer.rb
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
class CaseImporter < FileImporter
IMPORT_HEADER = ["case_number", "transition_aged_youth", "case_assignment", "birth_month_year_youth"]
IMPORT_HEADER = ["case_number", "case_assignment", "birth_month_year_youth"]

def self.import_cases(csv_filespec, org_id)
new(csv_filespec, org_id).import_cases
end

def initialize(csv_filespec, org_id)
super(csv_filespec, org_id, "casa_cases", ["case_number", "transition_aged_youth", "case_assignment", "birth_month_year_youth"])
super(csv_filespec, org_id, "casa_cases", ["case_number", "case_assignment", "birth_month_year_youth"])
end

def import_cases
Expand Down Expand Up @@ -45,6 +45,7 @@ def import_cases

def create_casa_case(case_params, volunteer_assignment_list)
casa_case = CasaCase.new(case_params)
casa_case.transition_aged_youth = casa_case.in_transition_age?
casa_case.casa_org_id = org_id
casa_case.save!

Expand Down
4 changes: 4 additions & 0 deletions app/models/casa_case.rb
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,10 @@ def self.available_for_volunteer(volunteer)
.order(:case_number)
end

def in_transition_age?
birth_month_year_youth.nil? ? false : birth_month_year_youth <= 14.years.ago
end

def has_transitioned?
transition_aged_youth
end
Expand Down
6 changes: 3 additions & 3 deletions public/casa_cases.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
case_number,transition_aged_youth,case_assignment,birth_month_year_youth
CINA-01-4347,TRUE,volunteer1@example.net,March 2010
CINA-01-4348,FALSE,"volunteer2@example.net, volunteer3@example.net",September 2015
case_number,case_assignment,birth_month_year_youth
CINA-01-4347,volunteer1@example.net,March 2010
CINA-01-4348,"volunteer2@example.net, volunteer3@example.net",September 2015
8 changes: 4 additions & 4 deletions spec/fixtures/casa_cases.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
case_number,transition_aged_youth,case_assignment,birth_month_year_youth
CINA-01-4347,TRUE,volunteer1@example.net,
CINA-01-4348,FALSE,"volunteer2@example.net, volunteer3@example.net",February 2014
CINA-01-4349,FALSE,,December 2016
case_number,case_assignment,birth_month_year_youth
CINA-01-4347,volunteer1@example.net,
CINA-01-4348,"volunteer2@example.net, volunteer3@example.net",February 2000
CINA-01-4349,,December 2016
4 changes: 2 additions & 2 deletions spec/fixtures/existing_casa_case.csv
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
case_number,transition_aged_youth,case_assignment,birth_month_year_youth
CINA-00-0000,TRUE,volunteer1@example.net,
case_number,case_assignment,birth_month_year_youth
CINA-00-0000,volunteer1@example.net,
6 changes: 3 additions & 3 deletions spec/lib/importers/case_importer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@
expect { case_importer.import_cases }.to change(CasaCase, :count).by(3)

# correctly imports true/false transition_aged_youth
expect(CasaCase.find_by(case_number: "CINA-01-4347").transition_aged_youth).to be_truthy
expect(CasaCase.find_by(case_number: "CINA-01-4348").transition_aged_youth).to be_falsey
expect(CasaCase.find_by(case_number: "CINA-01-4347").transition_aged_youth).to be_falsey # birth_month_year_youth is nil
expect(CasaCase.find_by(case_number: "CINA-01-4348").transition_aged_youth).to be_truthy
expect(CasaCase.find_by(case_number: "CINA-01-4349").transition_aged_youth).to be_falsey

# correctly imports birth_month_year_youth
expect(CasaCase.find_by(case_number: "CINA-01-4347").birth_month_year_youth).to be_nil
expect(CasaCase.find_by(case_number: "CINA-01-4348").birth_month_year_youth&.strftime("%Y-%m-%d")).to eql "2014-02-01"
expect(CasaCase.find_by(case_number: "CINA-01-4348").birth_month_year_youth&.strftime("%Y-%m-%d")).to eql "2000-02-01"
expect(CasaCase.find_by(case_number: "CINA-01-4349").birth_month_year_youth&.strftime("%Y-%m-%d")).to eql "2016-12-01"

# correctly adds volunteers
Expand Down

0 comments on commit 43345d6

Please sign in to comment.