module Samwise::Util
Public Class Methods
duns_contains_forbidden_characters?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 35 def self.duns_contains_forbidden_characters?(duns: nil) duns.split('').each do |character| return false if self.string_is_numeric?(string: character) end false end
duns_is_eight_digits?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 55 def self.duns_is_eight_digits?(duns: nil) duns.length == 8 end
duns_is_nine_digits?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 59 def self.duns_is_nine_digits?(duns: nil) duns.length == 9 end
duns_is_properly_formatted?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 4 def self.duns_is_properly_formatted?(duns: nil) return false if duns.nil? duns = duns.gsub('-', '') return true if duns_contains_forbidden_characters?(duns: duns) return true if duns_is_seven_digits?(duns: duns) return true if duns_is_eight_digits?(duns: duns) return true if duns_is_nine_digits?(duns: duns) return true if duns_is_thirteen_digits?(duns: duns) return false end
duns_is_seven_digits?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 51 def self.duns_is_seven_digits?(duns: nil) duns.length == 7 end
duns_is_thirteen_digits?(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 63 def self.duns_is_thirteen_digits?(duns: nil) duns.length == 13 end
format_duns(duns: nil)
click to toggle source
# File lib/samwise/util.rb, line 19 def self.format_duns(duns: nil) raise Samwise::Error::InvalidFormat unless duns_is_properly_formatted?(duns: duns) duns = duns.gsub('-', '') if duns_is_nine_digits?(duns: duns) duns = "#{duns}0000" elsif duns_is_eight_digits?(duns: duns) duns = "0#{duns}0000" elsif duns_is_seven_digits?(duns: duns) duns = "00#{duns}0000" end duns end
string_is_numeric?(string: nil)
click to toggle source
# File lib/samwise/util.rb, line 43 def self.string_is_numeric?(string: nil) string.split('').each do |character| return false unless character.to_i.to_s == character end return true end