class SocketLabs::InjectionApi::Core::StringExtension
Public Instance Methods
is_valid_email_address(email_address)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 46 def is_valid_email_address(email_address) if value_empty(email_address) false else if has_invalid_parts(email_address) || has_invalid_characters(email_address) false else parts = email_address.split('@') if parts.count != 2 false else !(is_part_empty(parts[0]) || is_part_empty(parts[1])) end end end end
Private Instance Methods
has_invalid_characters(value)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 36 def has_invalid_characters(value) [',', ' ', ';', 191.chr].each do |x| if value.include? x true end end false end
has_invalid_parts(value)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 16 def has_invalid_parts(value) value.count('@') != 1 end
is_part_empty(value)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 20 def is_part_empty(value) unless value_empty(value) true end part = strip_or_self!(value) unless value_empty(part) true end part.length <= 0 end
strip_or_self!(str)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 8 def strip_or_self!(str) str.strip! || str if str end
value_empty(value)
click to toggle source
# File lib/socketlabs/injectionapi/core/string_extension.rb, line 12 def value_empty(value) value.nil? || value.empty? end