diff --git a/app/helpers/tab_nav_helper.rb b/app/helpers/tab_nav_helper.rb
index 5b8a74bb1..7af63aeb1 100644
--- a/app/helpers/tab_nav_helper.rb
+++ b/app/helpers/tab_nav_helper.rb
@@ -1,44 +1,32 @@
+module TabNavHelper
+ using RefinementTest
+ include GovukLinkHelper
- module TabNavHelper
- include GovukLinkHelper
- include Helpers
- using FormatPostcode
-
+ def user_cell(user)
+ link_text = user.name.presence || user.email
+ [govuk_link_to(link_text, user), "User #{user.email}"].join("\n")
+ end
- def user_cell(user)
- link_text = user.name.presence || user.email
- [govuk_link_to(link_text, user), "User #{user.email}"].join("\n")
- end
+ def location_cell(location, link)
+ link_text = location.postcode.formatted_postcode
+ [govuk_link_to(link_text, link, method: :patch), "Location #{location.name}"].join("\n")
+ end
-<<<<<<< Updated upstream
def scheme_cell(scheme)
link_text = scheme.service_name
link = scheme.confirmed? ? scheme : scheme_check_answers_path(scheme)
[govuk_link_to(link_text, link), "Scheme #{scheme.primary_client_group}"].join("\n")
end
-=======
- def location_cell(location, link)
-
- link_text = location.postcode.formatted_postcode
- [govuk_link_to(link_text, link, method: :patch), "Location #{location.name}"].join("\n")
- end
->>>>>>> Stashed changes
-
- def scheme_cell(scheme)
- link_text = scheme.service_name
- [govuk_link_to(link_text, scheme), "Scheme #{scheme.primary_client_group}"].join("\n")
- end
- def org_cell(user)
- role = "#{user.role.to_s.humanize}"
- [user.organisation.name, role].join("\n")
- end
-
- def tab_items(user)
- [
- { name: t("Details"), url: details_organisation_path(user.organisation) },
- { name: t("Users"), url: users_organisation_path(user.organisation) },
- ]
- end
+ def org_cell(user)
+ role = "#{user.role.to_s.humanize}"
+ [user.organisation.name, role].join("\n")
end
+ def tab_items(user)
+ [
+ { name: t("Details"), url: details_organisation_path(user.organisation) },
+ { name: t("Users"), url: users_organisation_path(user.organisation) },
+ ]
+ end
+end
diff --git a/app/models/case_log.rb b/app/models/case_log.rb
index 269d3edd8..843e26be6 100644
--- a/app/models/case_log.rb
+++ b/app/models/case_log.rb
@@ -574,12 +574,12 @@ private
end
def process_postcode_changes!
- self.postcode_full = format_postcode(postcode_full)
+ self.postcode_full = upcase_and_remove_whitespace(postcode_full)
process_postcode(postcode_full, "postcode_known", "is_la_inferred", "la")
end
def process_previous_postcode_changes!
- self.ppostcode_full = format_postcode(ppostcode_full)
+ self.ppostcode_full = upcase_and_remove_whitespace(ppostcode_full)
process_postcode(ppostcode_full, "ppcodenk", "is_previous_la_inferred", "prevloc")
end
@@ -699,4 +699,8 @@ private
(value * 52 / num_of_weeks).round(2)
end
+
+ def upcase_and_remove_whitespace(string)
+ string.present? ? string.upcase.gsub(/\s+/, "") : string
+ end
end
diff --git a/app/models/form/setup/questions/location_id.rb b/app/models/form/setup/questions/location_id.rb
index fa243c62f..79a3c2d18 100644
--- a/app/models/form/setup/questions/location_id.rb
+++ b/app/models/form/setup/questions/location_id.rb
@@ -1,5 +1,6 @@
class Form::Setup::Questions::LocationId < ::Form::Question
- using FormatPostcode
+ using RefinementTest
+
def initialize(_id, hsh, page)
super("location_id", hsh, page)
@check_answer_label = "Location"
diff --git a/app/postcode_app.rb b/app/services/refinement_test.rb
similarity index 71%
rename from app/postcode_app.rb
rename to app/services/refinement_test.rb
index d532947d9..957c9662d 100644
--- a/app/postcode_app.rb
+++ b/app/services/refinement_test.rb
@@ -1,7 +1,7 @@
-module FormatPostcode
- refine FormatPostcode do
+module RefinementTest
+ refine String do
def formatted_postcode
- postcode = upcase.gsub(/\s+/, "")
+ postcode = self.upcase.gsub(/\s+/, "")
case postcode.length
when 5
postcode.insert(2, " ")
@@ -14,4 +14,4 @@ module FormatPostcode
end
end
end
-
\ No newline at end of file
+end
diff --git a/config/application.rb b/config/application.rb
index 74d1375b1..7bdbfb93e 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -15,8 +15,6 @@ require "action_view/railtie"
# require "sprockets/railtie"
# require "rails/test_unit/railtie"
-require_relative '../lib/ext/string'
-
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)
diff --git a/spec/requests/locations_controller_spec.rb b/spec/requests/locations_controller_spec.rb
index f3e118ab1..a989f4a5b 100644
--- a/spec/requests/locations_controller_spec.rb
+++ b/spec/requests/locations_controller_spec.rb
@@ -1,5 +1,7 @@
require "rails_helper"
+using RefinementTest
+
RSpec.describe LocationsController, type: :request do
let(:page) { Capybara::Node::Simple.new(response.body) }
let(:user) { FactoryBot.create(:user, :support) }
@@ -802,7 +804,7 @@ RSpec.describe LocationsController, type: :request do
it "shows scheme" do
locations.each do |location|
expect(page).to have_content(location.id)
- expect(page).to have_content(location.postcode)
+ expect(page).to have_content(location.postcode.formatted_postcode)
expect(page).to have_content(location.type_of_unit)
expect(page).to have_content(location.startdate&.to_formatted_s(:govuk_date))
end
@@ -904,7 +906,7 @@ RSpec.describe LocationsController, type: :request do
it "shows scheme" do
locations.each do |location|
expect(page).to have_content(location.id)
- expect(page).to have_content(location.postcode)
+ expect(page).to have_content(location.postcode.formatted_postcode)
expect(page).to have_content(location.type_of_unit)
expect(page).to have_content(location.startdate&.to_formatted_s(:govuk_date))
end