class Faker::Company
Public Class Methods
australian_business_number()
click to toggle source
# File lib/faker/company.rb, line 51 def australian_business_number base = ('%09d' % rand(10 ** 9)) abn = '00' + base (99 - (abn_checksum(abn) % 89)).to_s + base end
bs()
click to toggle source
When a straight answer won't do, BS to the rescue!
# File lib/faker/company.rb, line 28 def bs translate('faker.company.bs').collect {|list| list.sample }.join(' ') end
buzzword()
click to toggle source
# File lib/faker/company.rb, line 23 def buzzword translate('faker.company.buzzwords').flatten.sample end
catch_phrase()
click to toggle source
Generate a buzzword-laden catch phrase.
# File lib/faker/company.rb, line 19 def catch_phrase translate('faker.company.buzzwords').collect {|list| list.sample }.join(' ') end
duns_number()
click to toggle source
# File lib/faker/company.rb, line 36 def duns_number ('%09d' % rand(10 ** 9)).gsub(/(\d\d)(\d\d\d)(\d\d\d\d)/, '\1-\2-\3') end
ein()
click to toggle source
# File lib/faker/company.rb, line 32 def ein ('%09d' % rand(10 ** 9)).gsub(/(\d\d)(\d\d\d\d\d\d\d)/, '\1-\2') end
industry()
click to toggle source
# File lib/faker/company.rb, line 14 def industry fetch('company.industry') end
logo()
click to toggle source
Get a random company logo url in PNG format.
# File lib/faker/company.rb, line 41 def logo rand_num = Random.rand(13) + 1 "https://pigment.github.io/fake-logos/logos/medium/color/#{rand_num}.png" end
name()
click to toggle source
# File lib/faker/company.rb, line 6 def name parse('company.name') end
profession()
click to toggle source
# File lib/faker/company.rb, line 58 def profession fetch('company.profession') end
suffix()
click to toggle source
# File lib/faker/company.rb, line 10 def suffix fetch('company.suffix') end
swedish_organisation_number()
click to toggle source
# File lib/faker/company.rb, line 46 def swedish_organisation_number base = ('%09d' % rand(10 ** 9)) base + luhn_algorithm(base).to_s end
Private Class Methods
abn_checksum(abn)
click to toggle source
# File lib/faker/company.rb, line 92 def abn_checksum(abn) abn_weights = [10,1,3,5,7,9,11,13,15,17,19] sum = 0 abn_weights.each_with_index do |weight, i| sum += weight * abn[i].to_i end sum end
luhn_algorithm(number)
click to toggle source
# File lib/faker/company.rb, line 64 def luhn_algorithm(number) multiplications = [] number.split(//).each_with_index do |digit, i| if i % 2 == 0 multiplications << digit.to_i * 2 else multiplications << digit.to_i end end sum = 0 multiplications.each do |num| num.to_s.each_byte do |character| sum += character.chr.to_i end end if sum % 10 == 0 control_digit = 0 else control_digit = (sum / 10 + 1) * 10 - sum end control_digit end