From 9db24fba7d93d360bd8f9f43c43407ed9a0f17a1 Mon Sep 17 00:00:00 2001 From: Karl Heitmann Date: Wed, 17 Aug 2022 20:35:10 -0400 Subject: [PATCH] full_formatted_rut merged into full_rut with param formatted --- doc/default/chile_rut.md | 10 ++------ lib/faker/default/chile_rut.rb | 29 ++++------------------ test/faker/default/test_faker_chile_rut.rb | 4 +-- 3 files changed, 9 insertions(+), 34 deletions(-) diff --git a/doc/default/chile_rut.md b/doc/default/chile_rut.md index 7b3a5bde0c..2496131bc2 100644 --- a/doc/default/chile_rut.md +++ b/doc/default/chile_rut.md @@ -24,13 +24,7 @@ Faker::ChileRut.check_digit #=> "5" # Keyword arguments: min_rut # Keyword arguments: fixed Faker::ChileRut.full_rut #=> "30686957-4" -Faker::ChileRut.full_rut(min_rut: 20890156) #=> "30686957-4" +Faker::ChileRut.full_rut(min_rut: 20890156) #=> "20890156-4" +Faker::ChileRut.full_rut(min_rut: 20890156, formatted: true) #=> "20.890.156-4" Faker::ChileRut.full_rut(min_rut: 30686957, fixed: true) #=> "30686957-4" - -# Returns full formatted rut -# Keyword arguments: min_rut -# Keyword arguments: fixed -Faker::ChileRut.full_formatted_rut #=> "30.686.957-4" -Faker::ChileRut.full_formatted_rut(min_rut: 20890156) #=> "30.686.957-4" -Faker::ChileRut.full_formatted_rut(min_rut: 30686957, fixed: true) #=> "30.686.957-4" ``` diff --git a/lib/faker/default/chile_rut.rb b/lib/faker/default/chile_rut.rb index 673c4ecb92..2ce900696c 100644 --- a/lib/faker/default/chile_rut.rb +++ b/lib/faker/default/chile_rut.rb @@ -83,36 +83,17 @@ def check_digit # Faker::ChileRut.full_rut(min_rut: 30686957, fixed: true) #=> "30686957-4" # # @faker.version 1.9.2 - def full_rut(legacy_min_rut = NOT_GIVEN, legacy_fixed = NOT_GIVEN, min_rut: 0, fixed: false) + def full_rut(legacy_min_rut = NOT_GIVEN, legacy_fixed = NOT_GIVEN, min_rut: 0, fixed: false, formatted: false) warn_for_deprecated_arguments do |keywords| keywords << :min_rut if legacy_min_rut != NOT_GIVEN keywords << :fixed if legacy_fixed != NOT_GIVEN end - "#{rut(min_rut: min_rut, fixed: fixed)}-#{dv}" - end - - ## - # Produces a random Chilean RUT (Rol Unico Tributario, ID with 8 digits) with a dv (digito verificador, check-digit). - # with character passed in argument as separator. - # - # @param min_rut [Integer] Specifies the minimum value of the rut. - # @param fixed [Boolean] Determines if the rut is fixed (returns the min_rut value). - # @return [String] - # - # @example - # Faker::ChileRut.full_rut_with_dots #=> "30.686.957-4" - # Faker::ChileRut.full_rut_with_dots(min_rut: 20890156) #=> "30.686.957-4" - # Faker::ChileRut.full_rut_with_dots(min_rut: 30686957, fixed: true) #=> "30.686.957-4" - # - # @faker.version next - def full_formatted_rut(legacy_min_rut = NOT_GIVEN, legacy_fixed = NOT_GIVEN, min_rut: 0, fixed: false) - warn_for_deprecated_arguments do |keywords| - keywords << :min_rut if legacy_min_rut != NOT_GIVEN - keywords << :fixed if legacy_fixed != NOT_GIVEN + if formatted + "#{rut(min_rut: min_rut, fixed: fixed).to_s.reverse.gsub(/(\d{3})(?=\d)/, '\\1.').reverse}-#{dv}" + else + "#{rut(min_rut: min_rut, fixed: fixed)}-#{dv}" end - - "#{rut(min_rut: min_rut, fixed: fixed).to_s.reverse.gsub(/(\d{3})(?=\d)/, '\\1.').reverse}-#{dv}" end attr_reader :last_rut diff --git a/test/faker/default/test_faker_chile_rut.rb b/test/faker/default/test_faker_chile_rut.rb index 98a2f380c3..99d9105748 100644 --- a/test/faker/default/test_faker_chile_rut.rb +++ b/test/faker/default/test_faker_chile_rut.rb @@ -25,8 +25,8 @@ def test_check_digit assert @tester.dv == '4' end - def test_full_formatted_rut_has_dv - assert @tester.full_formatted_rut(min_rut: 30_686_957, fixed: true).split('-')[0] == '30.686.957' + def test_full_formatted_rut + assert @tester.full_rut(min_rut: 30_686_957, fixed: true, formatted: true).split('-')[0] == '30.686.957' assert @tester.dv == '4' end end