From 9ac1a454a8e1796ec902b5075fb3447dd2659d92 Mon Sep 17 00:00:00 2001 From: danielTiringer Date: Fri, 5 Jun 2020 10:51:48 +0200 Subject: [PATCH 1/4] Add YARD docs to Faker::ID_Number --- lib/faker/default/id_number.rb | 86 ++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/lib/faker/default/id_number.rb b/lib/faker/default/id_number.rb index 7a357ee894..3f2eff3292 100644 --- a/lib/faker/default/id_number.rb +++ b/lib/faker/default/id_number.rb @@ -19,10 +19,28 @@ class IDNumber < Base CHILEAN_MODULO = 11 class << self + ## + # Produces a random valid US Social Security number. + # + # @return [String] + # + # @example + # Faker::IDNumber.valid #=> "552-56-3593" + # + # @faker.version 1.6.0 def valid _translate('valid') end + ## + # Produces a random invalid US Social Security number. + # + # @return [String] + # + # @example + # Faker::IDNumber.invalid #=> "311-72-0000" + # + # @faker.version 1.6.0 def invalid _translate('invalid') end @@ -33,6 +51,15 @@ def ssn_valid INVALID_SSN.any? { |regex| regex =~ ssn } ? ssn_valid : ssn end + ## + # Produces a random Spanish citizen identifier (DNI). + # + # @return [String] + # + # @example + # Faker::IDNumber.spanish_citizen_number #=> "53290236-H" + # + # @faker.version 1.9.0 def spanish_citizen_number num = Faker::Number.number(digits: 8) mod = num.to_i % 23 @@ -40,6 +67,15 @@ def spanish_citizen_number "#{num}-#{check}" end + ## + # Produces a random Spanish foreign born citizen identifier (NIE). + # + # @return [String] + # + # @example + # Faker::IDNumber.spanish_foreign_citizen_number #=> "Z-1600870-Y" + # + # @faker.version 1.9.0 def spanish_foreign_citizen_number code = 'XYZ' digits = Faker::Number.number(digits: 7) @@ -50,6 +86,16 @@ def spanish_foreign_citizen_number "#{prefix}-#{digits}-#{check}" end + ## + # Produces a random valid South African ID Number. + # + # @return [String] + # + # @example + # Faker::IDNumber.south_african_id_number #=> "8105128870184" + # Faker::IDNumber.valid_south_african_id_number #=> "8105128870184" + # + # @faker.version 1.9.2 def valid_south_african_id_number id_number = [ Faker::Date.birthday.strftime('%y%m%d'), @@ -63,6 +109,15 @@ def valid_south_african_id_number alias south_african_id_number valid_south_african_id_number + ## + # Produces a random invalid South African ID Number. + # + # @return [String] + # + # @example + # Faker::IDNumber.invalid_south_african_id_number #=> "1642972065088" + # + # @faker.version 1.9.2 def invalid_south_african_id_number invalid_date_of_birth = [ Faker::Number.number(digits: 2), @@ -80,6 +135,17 @@ def invalid_south_african_id_number [id_number, south_african_id_checksum_digit(id_number)].join end + ## + # Produces a random Brazilian Citizen Number (CPF). + # + # @param formatted [Boolean] Specifies if the number is formatted with dividers. + # @return [String] + # + # @example + # Faker::IDNumber.brazilian_citizen_number #=> "53540542221" + # Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> 000.000.000-00 + # + # @faker.version 1.9.2 def brazilian_citizen_number(legacy_formatted = NOT_GIVEN, formatted: false) warn_for_deprecated_arguments do |keywords| keywords << :formatted if legacy_formatted != NOT_GIVEN @@ -94,6 +160,17 @@ def brazilian_citizen_number(legacy_formatted = NOT_GIVEN, formatted: false) alias brazilian_cpf brazilian_citizen_number + ## + # Produces a random Brazilian ID Number (RG). + # + # @param formatted [Boolean] Specifies if the number is formatted with dividers. + # @return [String] + # + # @example + # Faker::IDNumber.brazilian_id #=> 1212312312 + # Faker::IDNumber.brazilian_id(formatted: true) #=> 12.123.123-12 + # + # @faker.version 2.1.2 def brazilian_id(legacy_formatted = NOT_GIVEN, formatted: false) warn_for_deprecated_arguments do |keywords| keywords << :formatted if legacy_formatted != NOT_GIVEN @@ -107,6 +184,15 @@ def brazilian_id(legacy_formatted = NOT_GIVEN, formatted: false) alias brazilian_rg brazilian_id + ## + # Produces a random Chilean ID (Rut with 8 digits). + # + # @return [String] + # + # @example + # Faker::IDNumber.chilean_id #=> "15620613-K" + # + # @faker.version 2.1.2 def chilean_id digits = Faker::Number.number(digits: 8) verification_code = chilean_verification_code(digits) From 782baf4ca51acdbc7186b0faec8b52646a82d2ea Mon Sep 17 00:00:00 2001 From: Daniel Tiringer <53534182+danielTiringer@users.noreply.github.com> Date: Fri, 12 Jun 2020 11:26:42 +0200 Subject: [PATCH 2/4] Update lib/faker/default/id_number.rb Change returned numbers to match Co-authored-by: Lucas Queiroz --- lib/faker/default/id_number.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/faker/default/id_number.rb b/lib/faker/default/id_number.rb index 3f2eff3292..a201718c63 100644 --- a/lib/faker/default/id_number.rb +++ b/lib/faker/default/id_number.rb @@ -143,7 +143,7 @@ def invalid_south_african_id_number # # @example # Faker::IDNumber.brazilian_citizen_number #=> "53540542221" - # Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> 000.000.000-00 + # Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> "535.405.422-21" # # @faker.version 1.9.2 def brazilian_citizen_number(legacy_formatted = NOT_GIVEN, formatted: false) From 3eb8aa01ab4a2605e8f2435be51e108bb5d3b6ff Mon Sep 17 00:00:00 2001 From: Daniel Tiringer <53534182+danielTiringer@users.noreply.github.com> Date: Fri, 12 Jun 2020 11:28:48 +0200 Subject: [PATCH 3/4] Update lib/faker/default/id_number.rb Update Brazilian ID format Co-authored-by: Lucas Queiroz --- lib/faker/default/id_number.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/faker/default/id_number.rb b/lib/faker/default/id_number.rb index a201718c63..5f1411d286 100644 --- a/lib/faker/default/id_number.rb +++ b/lib/faker/default/id_number.rb @@ -167,8 +167,8 @@ def brazilian_citizen_number(legacy_formatted = NOT_GIVEN, formatted: false) # @return [String] # # @example - # Faker::IDNumber.brazilian_id #=> 1212312312 - # Faker::IDNumber.brazilian_id(formatted: true) #=> 12.123.123-12 + # Faker::IDNumber.brazilian_id #=> "493054029" + # Faker::IDNumber.brazilian_id(formatted: true) #=> "49.305.402-9" # # @faker.version 2.1.2 def brazilian_id(legacy_formatted = NOT_GIVEN, formatted: false) From 7bde1b255bccbd0353e2725031478f7d660ae74f Mon Sep 17 00:00:00 2001 From: danielTiringer Date: Fri, 12 Jun 2020 11:30:42 +0200 Subject: [PATCH 4/4] Update docs with better examples --- doc/default/id_number.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/default/id_number.md b/doc/default/id_number.md index 04bb62a730..7280a3bb76 100644 --- a/doc/default/id_number.md +++ b/doc/default/id_number.md @@ -24,14 +24,14 @@ Faker::IDNumber.invalid_south_african_id_number #=> "1642972065088" # Generate a Brazilian citizen number (CPF) # Keyword arguments: formatted Faker::IDNumber.brazilian_citizen_number #=> "53540542221" -Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> 000.000.000-00 +Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> "535.405.422-21" # Generate a Brazilian ID Number (RG) # Keyword arguments: formatted -Faker::IDNumber.brazilian_id #=> 1212312312 -Faker::IDNumber.brazilian_id(formatted: true) #=> 12.123.123-12 +Faker::IDNumber.brazilian_id #=> "493054029" +Faker::IDNumber.brazilian_id(formatted: true) #=> "49.305.402-9" # Generate a Chilean ID (Rut with 8 digits) # For more advanced cases, please refer to Faker::ChileRut Faker::IDNumber.chilean_id #=> "15620613-K" -``` \ No newline at end of file +```