lib/ffaker/phone_number_sg.rb
# based on information from http://en.wikipedia.org/wiki/Telephone_numbers_in_Singapore module Faker module PhoneNumberSG extend ModuleUtils extend self # Number Ranges # 3xxx xxxx - Voice Over IP services # 6xxx xxxx - Fixed Line services inclusive of Fixed Line Voice Over IP services # like StarHub Digital Voice and SingTel mio Voice # 8xxx xxxx - Mobile phone services # 9xxx xxxx - Mobile phone services Includes Paging Services like SUNPAGE # 800 xxx xxxx - Toll-Free International services # 1800 xxx xxxx - Toll-Free line services # 1900 xxx xxxx - Premium Service # Generates a voip phone number # 3xxx xxxx # def voip_number Faker.numerify("3### ####") end # Generates a fixed line phone number # 6xxx xxxx # def fixed_line_number Faker.numerify("6### ####") end # Generates a fixed mobile phone number # 8xxx xxxx # def mobile_number Faker.numerify("8### ####") end # Generates a fixed mobile phone number or pager service number # 9xxx xxxx # def mobile_or_pager_number Faker.numerify("9### ####") end # Generates an international toll-free number # 800 xxx xxxx # def international_toll_free_number Faker.numerify("800 ### ####") end # Generates an toll-free number # 1800 xxx xxxx # def toll_free_number Faker.numerify("1800 ### ####") end # Generates a premium service number # (1900) xxx xxxx # def premium_service_number Faker.numerify("1900 ### ####") end # generates mobile or home/work number def phone_number case rand(3) when 0 then fixed_line_number when 1 then mobile_number when 2 then mobile_or_pager_number end end def country_code "+65" end end end