class PostcodeValidation::Domain::PotentialAddressMatch
Attributes
description[R]
text[R]
Public Class Methods
new(text:, description:)
click to toggle source
# File lib/postcode_validation/domain/potential_address_match.rb, line 4 def initialize(text:, description:) @text = text @description = description end
Public Instance Methods
postcode_matches?(postcode)
click to toggle source
# File lib/postcode_validation/domain/potential_address_match.rb, line 9 def postcode_matches?(postcode) normalised_postcode = letters_and_numbers_only(postcode.upcase) text_includes?(normalised_postcode) || description_includes?(normalised_postcode) end
Private Instance Methods
description_includes?(postcode)
click to toggle source
# File lib/postcode_validation/domain/potential_address_match.rb, line 23 def description_includes?(postcode) letters_and_numbers_only(description).include?(postcode) end
letters_and_numbers_only(postcode)
click to toggle source
# File lib/postcode_validation/domain/potential_address_match.rb, line 27 def letters_and_numbers_only(postcode) postcode.gsub(/[^0-9a-zA-Z]/, '') end
text_includes?(postcode)
click to toggle source
# File lib/postcode_validation/domain/potential_address_match.rb, line 19 def text_includes?(postcode) letters_and_numbers_only(text).include?(postcode) end